android – ConnectivityManager getActiveNetworkInfo空指针异常

前端之家收集整理的这篇文章主要介绍了android – ConnectivityManager getActiveNetworkInfo空指针异常前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我偶尔会在连接管理器中看到空指针异常.从意图服务我通过isOnWIFI(this)检查网络状态.在cm.getActiveNetworkInfo()行发生异常.这很奇怪,因为我在调用之前检查了null.
注意:权限已设置.
public static boolean isOnWIFI(Context context) {
    ConnectivityManager cm = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);

        return cm != null
                //here occurs NullPointerException
                && cm.getActiveNetworkInfo() != null
                && ((cm.getNetworkInfo(ConnectivityManager.TYPE_WIFI) != null && cm.getNetworkInfo(
                        ConnectivityManager.TYPE_WIFI).isConnected()));

}

有没有想过为什么会这样?我无法调试它,因为它只是偶尔出现错误报告.我看到的唯一解决方案是将其放入try catch块.谢谢.

解决方法

如果没有活动连接,他们只是返回null我认为这是你的问题.

http://developer.android.com/reference/android/net/ConnectivityManager.html #getActiveNetworkInfo()

猜你在找的Android相关文章