当没有互联网时,应用程序崩溃

时间:2016-07-26 12:53:45

标签: android android-studio crash

我的应用是一个RSS源并在启动和刷新时检索数据,但是当没有Internet连接时应用程序崩溃。如果没有任何

,如何检查Internet连接并显示吐司

3 个答案:

答案 0 :(得分:2)

您可以使用此功能检查是否有互联网

public boolean isConnected() {
    ConnectivityManager cm =
        (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
    NetworkInfo netInfo = cm.getActiveNetworkInfo();
    return netInfo != null && netInfo.isConnectedOrConnecting();
}

您还需要将其添加到清单文件

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

然后检查一下

if(isConnected){
    //Connected to the internet
}
else{
    //Handle error and show toast
}

您可以在此处找到更详细的答案 How to check internet access on Android? InetAddress never times out

答案 1 :(得分:1)

要检查是否已连接到网络。

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

  return cm.getActiveNetworkInfo() != null;
 }

检查互联网是否为avalaibe

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;
        }

    }

答案 2 :(得分:0)

使用此功能

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

检查互联网连接与否

if(isNetworkConnected){

}

在清单文件中添加以下权限

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