我的片段的onResume方法中有一个广播接收器。在一项服务中,我试图向这个接收器发送广播,但意图只是消失了。它没有收到。我在一个活动中也有一个broadcat接收器,它从这个服务接收广播,但它工作正常。是否与片段有关。
这是相关代码
片段onResume
broadcastReceiver1 = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
// String id="";
if (action.equalsIgnoreCase("callback_tab")) {
if (intent.hasExtra("id") && intent.getStringExtra("id").length() > 0) {
//Do work
}
}
}
};
IntentFilter intentFilter1 = new IntentFilter();
// set the custom action
intentFilter.addAction("callback_tab");
// register the receiver
getActivity().registerReceiver(broadcastReceiver1, intentFilter1);
取消注册是在onPause()中完成的,就像这样
getActivity().unregisterReceiver(broadcastReceiver1);
服务的意图是这样发送的
Intent broadcast1 = new Intent("callback_tab");
broadcast.putExtra("id", id);
sendBroadcast(broadcast1);
如果有人能提供暗示或帮助,那就太好了。谢谢!!