我有一个控制连接的课程。
我在启动android
时启动BroadcastReceiver
自动启动器
BroadcastReceiver
调用service
。和service
调用Connectivity
类
boolean state=Connectivity.isConnected(this);
Context
类
Connectivity
错误
当我使用getApplicationContext();
获取Context
时。我收到Null pointer
错误
因为我没有任何活动
我只有services
且没有任何activity
。应用程序需要在后台工作
我该如何解决这个问题 感谢
public class Connectivity {
/**
* Get the network info
* @param context
* @return
*/
public static NetworkInfo getNetworkInfo(Context context){
ConnectivityManager cm = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
return cm.getActiveNetworkInfo();
}
/**
* Check if there is any connectivity
* @param context
* @return
*/
public static boolean isConnected(Context context){
NetworkInfo info = Connectivity.getNetworkInfo(context);
return (info != null && info.isConnected());
}
编辑:使用BroadcastReceiver Context解决了我的问题