android - 在 Intent 过滤器操作名称中使用应用程序名称

标签 android xml broadcastreceiver android-manifest intentfilter

我正在尝试在 AndroidManifest.xml 中创建一个带有几个 Intent 过滤器的 BroadcastReveiver。我需要使用应用程序名称作为操作名称的一部分。例如:

<receiver android:name=".SomeBroadcastReceiver">
    <intent-filter>
        <action android:name="<app_name>.SOME_ACTION" />
    </intent-filter>
</receiver>

我很确定这是不可能的,但我希望还有其他方法可以做到这样的事情?

我可以在应用程序类中注册接收器,但当应用程序进程未处于 Activity 状态时,它不会继续监听。只要安装了应用程序,就有什么办法可以监听这些操作吗?

最佳答案

假设“应用程序名称”是 Android 开发人员所说的应用程序 ID(或旧的“包名称”术语),请使用 manifest placeholders :

<action android:name="${applicationId}.SOME_ACTION" />

关于android - 在 Intent 过滤器操作名称中使用应用程序名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34769889/

相关文章:

android - mvn 安卓 :deploy -> Unfortunately App has stopped

Android - 已签名的 apk 无法在移动设备上运行

java - Activity 机器人 :label change application name

xml - recommendationXPath 似乎有效但谷歌电子表格只给出 "import internal error"

android - 检测 Android 上已读的短信

android - 我什么时候应该在另一个线程(不是主线程)上执行某些 SQLite 操作?

android - EventBus 发送空类

php - 使用 PHP 检索 XML 节点的子集

Android:关闭/丢失蓝牙连接或文件接收 -> 做点什么

android - 为什么要在 BroadcastReceiver 中调用 setResult?