如何在进行URL连接之前检测用户是否已启用3G/Wifi?

She*_*lam 6 java android android-wifi

如果用户没有wifi或3g连接,我不希望我的应用程序崩溃.我如何在运行时在我的应用程序中捕获它?

Jas*_*ght 7

首先获取ConnectivityManager的参考,然后检查设备的Wifi和3G状态.您需要ACCESS_NETWORK_STATE权限才能使用此服务.

    ConnectivityManager connManager = (ConnectivityManager) getSystemService(CONNECTIVITY_SERVICE);
    NetworkInfo mWifi = connManager.getNetworkInfo(ConnectivityManager.TYPE_WIFI);
    NetworkInfo mMobile = connManager.getNetworkInfo(ConnectivityManager.TYPE_MOBILE);

    if (mWifi.isConnected() == false && mMobile.isConnected() == false) {
        showDialog(DIALOG_NETWORK_UNAVAILABLE);
    }
Run Code Online (Sandbox Code Playgroud)