Android:测试设备是否可以访问互联网

时间:2014-10-20 09:15:38

标签: android

在我的Android应用程序中,我想测试用户是否可以访问互联网。我知道我能测试他是否连接到wifi或3G / 4G等......但也许用户连接到本地网络而无法访问互联网。

我应该尝试谷歌“ping”以确保他可以下载任何内容,还是确实存在确保手机上网的功能?

感谢。

2 个答案:

答案 0 :(得分:0)

如果您想在用户连接时检查用户是否可以访问互联网,请尝试访问Google等网站并暂停。

    URL url = new URL("https://google.com");

    HttpURLConnection urlc = (HttpURLConnection) url.openConnection();
    urlc.setRequestProperty("Connection", "close");
    urlc.setConnectTimeout(1000 * 30);
    urlc.connect();
    if (urlc.getResponseCode() == 200) {
        return true;
    }

如果您收到超时或错误代码,您可以认为您的应用未连接到互联网。

答案 1 :(得分:0)

private boolean isNetworkAvailable() {
ConnectivityManager connectivityManager 
      = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo activeNetworkInfo = connectivityManager.getActiveNetworkInfo();
return activeNetworkInfo != null && activeNetworkInfo.isConnected();

}

AndroidManifest:

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

但它已在这里得到解答:

Here