android – 在manifest.xml中声明的BroadcatReceiver没有接收到LocalBroadcastManager意图

前端之家收集整理的这篇文章主要介绍了android – 在manifest.xml中声明的BroadcatReceiver没有接收到LocalBroadcastManager意图前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
虽然可以通过代码声明“本地”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无关.

原文链接:https://www.f2er.com/android/315551.html

猜你在找的Android相关文章