【发布时间】:2011-07-07 18:18:08
【问题描述】:
我有一个需要监听网络变化的广播接收器 -
BroadcastReceiver networkStateReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
boolean noConnectivity =
intent.getBooleanExtra(ConnectivityManager.EXTRA_NO_CONNECTIVITY, false);
if(!noConnectivity)
{
//some stuff
}
}
};
我使用它注册 -
public void startListening() {
IntentFilter filter = new IntentFilter();
filter.addAction(ConnectivityManager.CONNECTIVITY_ACTION);
context.registerReceiver(networkStateReceiver, filter);
}
我在清单中添加了以下权限 -
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
当我将手机切换到飞行模式、关闭 wifi 等时,networkStateReceiver 仍然没有收到任何意图。我错过了什么吗?
【问题讨论】:
-
我尝试了同样的问题...你解决了吗??
标签: android broadcastreceiver intentfilter