虽然可以通过代码声明“本地”BroadcastReceiver,因此它接收通过LocalBroadcastManager.Ex发布的意图.
LocalBroadcastManager.getInstance(this).registerReceiver(new FooReceiver(),new IntentFilter("foo_intent_filter"));
我想知道是否可以通过manifest.xml(清理器)声明这样的接收器.
当我使用“清单方式”时,接收者没有“接收”意图.
<receiver android:name="FooReceiver" android:enabled="true" android:exported="false" > <intent-filter> <action android:name="foo_intent_filter" /> </intent-filter> </receiver>
我错过了什么吗?或代码方式是唯一可行的解决方案.
谢谢
解决方法
I wonder if it is possible to declare such receiver via the manifest.xml (cleaner) .
首先,这是不可能的.
其次,在清单中注册与“清洁”无关.它允许Android自己实例化接收器,以便您可以在进程未运行时响应广播.而且,在您引用的具体示例中,它允许系统上的任何应用程序向您发送广播.这些都与LocalBroadcastManager无关.