使用ConnectivityManager没有任何活动

时间:2013-05-12 12:49:37

标签: android service broadcastreceiver

我有一个控制连接的课程。

我在启动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解决了我的问题

0 个答案:

没有答案