2

このコードを使用してインターネット接続を確認しました

private boolean haveNetworkConnection() {
    boolean haveConnectedWifi = false;
    boolean haveConnectedMobile = false;

    ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
    NetworkInfo[] netInfo = cm.getAllNetworkInfo();
    for (NetworkInfo ni : netInfo) {
        if (ni.getTypeName().equalsIgnoreCase("WIFI"))
            if (ni.isConnected())
                haveConnectedWifi = true;
        if (ni.getTypeName().equalsIgnoreCase("MOBILE"))
            if (ni.isConnected())
                haveConnectedMobile = true;
    }
    return haveConnectedWifi || haveConnectedMobile;
}

しかし、インターネットへの接続が制限されている場合は処理されません。どうすれば修正できますか?

4

1 に答える 1

0

成功ステータスを取得した場合はバックグラウンドでプログラムでWebリンクを開いてみてください。成功した場合はインターネット接続を利用できます。失敗した場合は、インターネット接続を利用できません。リンクを開いてインターネットの可用性を確認してみてください。指定されたリンクで詳細をHttpURLConnection取得できます: HttpURLConnectionHttpURLConnection

于 2012-09-29T08:30:17.160 に答える