第一个网络关闭然后打开时Android应用程序崩溃

时间:2011-02-17 12:57:58

标签: android connectivity

我正在使用以下功能检查网络连接,但是当交换wifi状态时应用程序崩溃

    public static boolean isNetworkAvailable(Context context) {
    ConnectivityManager connec = (ConnectivityManager) context
    .getSystemService(Context.CONNECTIVITY_SERVICE);
    NetworkInfo netInfo = connec.getActiveNetworkInfo();

    if (netInfo != null && netInfo.isConnected() == true) {
        return true;
    }
    return false;
}

2 个答案:

答案 0 :(得分:1)

在网络之间转换需要一些时间......

所以现在,如果我们禁用wifi,它会在几秒后自动连接到移动网络..如果我们启用了wifi,那么它再次连接到wifi网络......

应用程序中的线程正在检查转移之前的连接...

查看此处的对话

Android: How to Enable/Disable Wifi or Internet Connection Programmatically

答案 1 :(得分:1)

您是否错过了NullPointerException?

我使用以下方法:

public boolean isOnline() {
    ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
    try {
        return cm.getActiveNetworkInfo().isConnectedOrConnecting();
    } catch(NullPointerException n) {
        return false;
    }
}