【发布时间】:2013-09-11 15:50:06
【问题描述】:
在此处显示的代码中出现空指针问题。通常空指针是一个简单易修复的东西,但是在这种情况下,我完全迷失了原因。
nullPointer 在这一行:
dataConnectionStatus = connManager.getActiveNetworkInfo().isConnected();
下面显示的代码位于 onCreate 方法的开头。我之前使用过类似的代码来检查 wifi 连接是否处于活动状态。在这种情况下,我需要检查 wifi 或 3g 数据连接是否处于活动状态。
空指针崩溃的情况是wifi和3g移动数据都关闭时。在这种情况下如何避免null?
ConnectivityManager connManager = (ConnectivityManager) getSystemService(CONNECTIVITY_SERVICE);
boolean dataConnectionStatus = false;
if(connManager!=null){
dataConnectionStatus = connManager.getActiveNetworkInfo().isConnected(); //<-NULL
}
【问题讨论】:
-
不需要检查 connManager != null。它永远是 != null。在您的示例中可以为 null 的是 connManager.getActiveNetworkInfo() 的返回对象。
标签: android nullpointerexception connectivity