Java Android助手类->;空指针异常
我想问: 在我的AppHelper类中,我有以下检查internet连接可用性的方法Java Android助手类->;空指针异常,java,android,nullpointerexception,helper,Java,Android,Nullpointerexception,Helper,我想问: 在我的AppHelper类中,我有以下检查internet连接可用性的方法 public boolean checkInternetConnection(Context ctx) { ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE); // test for connection if (cm.getActiveNetwork
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());
但不幸的是,我总是得到空指针异常。这是传递的应用程序上下文的问题吗?我应该如何解决这个问题
谢谢你的建议 我要说的是,AppHelper类是一个独立的活动,它从来没有正确地启动过 如果是这样,我会将AppHelper作为服务而不是活动来实现,因为“checkInternetConnection”方法更适合这种类型的任务
服务是否在自己的进程中运行取决于手头的特定问题。
getBaseContext()
几乎总是使用错误的上下文。但是一定要从logcat发布完整的stacktrace,并显示您在哪里初始化appHelper
。正如前面所说的,还有一个标准问题:您的清单中是否有
(不能是关于上下文的,因为您没有使用传入的上下文进行任何操作。)您甚至不说在哪一行中有空指针异常。这是你必须看的第一件事。我想知道人们如何在不阅读日志或使用调试工具的情况下编程…@Jiri粘贴到这里时一定错过了这一点。我打赌它应该是ctx.getSystemService
。