BroadcastReceiver中不是有 context么,可以直接获得啊。 如果你不想这么做的话,加一个静态的public static Context c ,实现其 set 和get方法 ,set里面在初始化时候 MainActivity.c=MainActivity.this; 这样在你的广播里面这样调用 MainActivity.c.getSystemService();即可。
android中的activity的方法,在广播类broadcastreceiver使用,需要拿到context,就可以使用activity中的方法,如下:
public class TestBBB extends BroadcastReceiver {
@SuppressWarnings("unused")
@Override
public void onReceive(Context context, Intent intent) {
// TODO Auto-generated method stub
ConnectivityManager conMan = (ConnectivityManager) context
.getSystemService(Context.CONNECTIVITY_SERVICE);
State wifi = conMan.getNetworkInfo(ConnectivityManager.TYPE_WIFI)
.getState();
}
}