我正在研究几个小时的问题。
我只是想从一个活动向另一个活动发送广播。我通过以下方式发送活动A中的广播:
Intent i = new Intent("test");
i.setAction("testaction");
sendBroadcast(i);
并通过以下方式在活动B中收到它:
private BroadcastReceiver updateGUIReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
Log.e("test", "test")
intent.getAction().equals(("testaction")){
...
}
}
}
....
registerBroadcastreceiver(updateGUIReceiver);
但是,如果我指定操作,接收方将永远不会被调用。如果我不这样做(取消注释),则不会接收到广播以及附加的附加内容,并且效果很好。
在您的接收器活动中,更改行
registerBroadcastreceiver(updateGUIReceiver);
到
IntentFilter filter = new IntentFilter();
filter.addAction("testaction");
registerReceiver(updateGUIReceiver, filter);
希望对您有所帮助!:D
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句