如何在Android中关闭互联网时给出错误消息?

时间:2017-07-19 17:40:36

标签: android

我正在制作一个用户需要互联网许可的应用程序,现在假设用户为应用程序提供了互联网许可,但互联网已关闭,以便如何发出互联网已关闭的错误消息并将其打开。

3 个答案:

答案 0 :(得分:0)

这就是你能做到的。

private boolean isNetworkConnected() {
     ConnectivityManager cm = (ConnectivityManager)getSystemService(Context.CONNECTIVITY_SERVICE);
          return cm.getActiveNetworkInfo() != null;
}
清单中的

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

此方法实际检查设备是否连接到互联网(有可能连接到网络但不连接到互联网)。

public boolean isInternetAvailable() {
    try {
        InetAddress ipAddr = InetAddress.getByName("google.com"); //You can replace it with your name
        return !ipAddr.equals("");

    } catch (Exception e) {
        return false;
    }

}

答案 1 :(得分:0)

我们可以使用ConnectivityManager类来查看互联网是否已连接。 ConnectivityManager不需要实例化,系统可以这样使用 -

if (isNetworkConnected())
        // The internet is on, go ahead 
else{
        // The internet is not connected, either take them to settings, or ask them to turn it on manually.
}

private boolean isNetworkConnected() {
    ConnectivityManager cm = (ConnectivityManager) getSystemService(this.CONNECTIVITY_SERVICE);

    return cm.getActiveNetworkInfo() != null;
}

答案 2 :(得分:0)

使用ConnectivityManager查看是否已连接互联网。

public static boolean isConnected() {
    ConnectivityManager connectivityManager = (ConnectivityManager) AppController.getInstance().getApplicationContext()
            .getSystemService(Context.CONNECTIVITY_SERVICE);
    NetworkInfo activeNetwork = connectivityManager.getActiveNetworkInfo();

    if (activeNetwork != null && activeNetwork.isAvailable() && activeNetwork.isConnected() && activeNetwork.isConnectedOrConnecting()) {
        return true;
    } else {
        return false;
    }
}

使用此条件

if (isConnected())
        // The internet is connected, do something
else{
        // The internet is not connected, do something
}

不要忘记在AndroidManifest.xml

中添加此权限
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

我希望可以帮助你。