gpt4 book ai didi

android - LocalBroadcastManager 是否依赖于应用程序包名称?

转载 作者:行者123 更新时间:2023-11-29 01:49:38 26 4
gpt4 key购买 nike

我正在使用新的 Android 构建系统创建一个应用程序,并使用 LocalBroadcastManager 将来自 IntentService 的通知发送回 Activity.

我已将以下产品风格定义为构建 3 个独立应用的一部分;

productFlavours {
london {
packageName 'com.example.lo'
}
dubai {
packageName 'com.example.du'
}
}

当我使用这两种产品风格中的任何一种构建应用程序时,我都没有通过管理器收到任何广播。我已确认服务和 Activity 都在同一进程中运行。

根据我的 Activity 的 Activity#onCreate 方法的要求绑定(bind)了一个广播接收器,但不接收任何事件。我还通过打印 Activity 和服务的进程 ID 进行了确认,并且都报告这是同一个进程,所以这不是问题。

作为测试,我删除了产品风格并仅使用应用 list 文件中定义的单个包名称构建应用,现在广播管理器似乎按预期运行。根据我发送的 Intent ,我只是在设置 Action 。

我还需要设置什么吗?

最佳答案

如果您查看 source code of LocalBroadcastManager你会看到,如果你给你的 Intent 标志 Intent.FLAG_DEBUG_LOG_RESOLUTION (通过使用 Intent.addFlags(int) ),它会在 logcat 中打印非常有用的信息:你可能想要尝试使用和不使用口味并比较结果以查看问题出在哪里。

关于android - LocalBroadcastManager 是否依赖于应用程序包名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19027088/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com