我正在调用checkinternet连接方法。具有checkinternet方法的java类代码如下。
public class PTs {
private Context context;
public PT(Context context) {
this.context = context;
}
public Boolean checkinternet() {
ConnectivityManager connectivityManager = (ConnectivityManager) getSystemService(CONNECTIVITY_SERVICE);
NetworkInfo activeinternet = connectivityManager.getActiveNetworkInfo();
return activeinternet != null && activeinternet.isConnected();
}
而我正在使用如下声明来获取其他活动中的互联网状态。
if (pt.checkinternet()){
//do some task
}
为什么会收到错误?有人可以提供帮助。
答案 0 :(得分:0)
从不通过构造函数自己创建活动,服务或提供程序的实例。该活动未正确初始化,因此您无法在其上调用getSystemService()
。
解决此问题的选项包括:
将此代码移动到现有活动中,该活动由框架正确启动,并且仅在该活动中使用该方法
从extends AppCompatActivity
移除PT
并checkinternet()
将Context
作为参数