我想问一下:
我在AppHelper类中有以下方法检查互联网连接的可用性。
public boolean checkInternetConnection(Context ctx) {
ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
// test for connection
if (cm.getActiveNetworkInfo() != null
&& cm.getActiveNetworkInfo().isAvailable()
&& cm.getActiveNetworkInfo().isConnected()) {
return true;
} else {
Log.i(GlobalApplication.APP_LOG_NAMESPACE, "Internet Connection Not Present");
return false;
}
}
我尝试使用以下方法获取布尔值:
// check internet connection and availability
Boolean isConnectionAvailable = appHelper.checkInternetConnection(getBaseContext());
但不幸的是我总是得到空指针异常。通过应用程序上下文是否重要?我该如何解决这个问题呢?
感谢您的任何建议。
答案 0 :(得分:0)
我将在黑暗中进行一次尝试,并说AppHelper类是一个单独的Activity,它永远不会以意图正确启动。
如果是这样,我会将AppHelper实现为服务而不是Activity,因为“checkInternetConnection”方法更适合此类任务。
天气与否,服务是否在自己的流程中运行,我认为这取决于手头的特定问题。