Java 未接收到广播[LocalBroadcastManager]Android
您能帮我解决这个问题吗?我已经实现了一个接收器(通过XML注册),它监听特定的本地广播,然后启动服务进行进一步处理,但不知何故,该接收器没有接收任何广播 虽然通过代码在本地注册的另一个接收器能够接收广播,但您能帮我解决这个问题吗。下面是我的代码Java 未接收到广播[LocalBroadcastManager]Android,java,android,broadcastreceiver,Java,Android,Broadcastreceiver,您能帮我解决这个问题吗?我已经实现了一个接收器(通过XML注册),它监听特定的本地广播,然后启动服务进行进一步处理,但不知何故,该接收器没有接收任何广播 虽然通过代码在本地注册的另一个接收器能够接收广播,但您能帮我解决这个问题吗。下面是我的代码 // Sending broadcast Intent intent = new Intent(Constants.ACTION_PROFILE_UPDATED); LocalBroadcastManager.getInstance(POC.getApp
// Sending broadcast
Intent intent = new Intent(Constants.ACTION_PROFILE_UPDATED);
LocalBroadcastManager.getInstance(POC.getAppContext()).sendBroadcast(intent);
// Receiver
public class LocalReceiver extends BroadcastReceiver {
private final String TAG = LocalReceiver.class.getSimpleName();
@Override
public void onReceive(Context context, Intent intent) {
Log.i(TAG, "received"); // its not received
if(intent.getAction() != null){
String action = intent.getAction();
Log.i(TAG, "action = " + action);
if(action.equals(Constants.ACTION_PROFILE_UPDATED)){
// IN manifest
<receiver
android:name=".LocalReceiver"
android:enabled="true"
android:exported="false" >
<intent-filter>
<action android:name="local.action.profile.updated" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</receiver>
//发送广播
意向意向=新意向(常量。动作\u配置文件\u更新);
LocalBroadcastManager.getInstance(POC.getAppContext()).sendBroadcast(intent);
//接受者
公共类LocalReceiver扩展了BroadcastReceiver{
private final String TAG=LocalReceiver.class.getSimpleName();
@凌驾
公共void onReceive(上下文、意图){
Log.i(标记“received”);//它没有被接收
if(intent.getAction()!=null){
String action=intent.getAction();
Log.i(标签“action=“+action”);
if(action.equals(Constants.action_PROFILE_UPDATED)){
//明显地
这个该死的代码不起作用,在开发者指南中,它说本地广播不会通过xml注册的接收器接收
请帮忙,
谢谢
我实现了一个接收器(通过XML注册),它监听特定的本地广播
这是不可能的。
LocalBroadcastManager
不适用于清单注册的接收者,仅适用于通过registerReceiver()
注册的接收者,该接收者在LocalBroadcastManager
实例本身上调用。您注册了接收者吗?