gpt4 book ai didi

java - Android - 其他应用窃取我的 Intent 接收器?

转载 作者:行者123 更新时间:2023-11-30 11:53:04 24 4
gpt4 key购买 nike

我有一个应用程序,它使用 ACTION_MEDIA_BUTTON Intent 和 BroadcastReceiver 来控制音乐播放器。用户按下外部硬件上的按钮,它控制应用程序内的音乐播放器。用户还可以按住按钮并更改音量。

我最近下载了另一个使用耳机按钮的应用程序,它接管了我应用程序的媒体按钮 Intent !因此,当打开另一个应用程序并按下按钮时,另一个应用程序将开始运行,但我的应用程序会认为按钮仍处于按下状态,因此它会循环播放音量。

总而言之,

  • 我的应用程序已打开,应该是媒体按钮 Intent 的唯一监听器
  • 其他应用程序被打开,它也想成为媒体按钮 Intent 的唯一听众
  • 在两个应用程序都打开的情况下按下按钮,控制转到其他应用程序
  • 我的应用程序认为按钮被按下,因为它在按下模式下失去控制(我认为)。然后它会启动我不想启动的功能,因为它认为用户按下了按钮。

有什么方法可以确保当我的应用程序打开时它是此媒体按钮 Intent 的唯一接收者?我可以至少检查一下是否有另一个应用程序接管了,这样我就可以防止意外行为吗?

感谢您的帮助,我以前从未遇到过运行不佳的应用程序!

最佳答案

您可以更改 BroadcastReceiver 的优先级(将其设为大值,例如 10000):然后它应首先获取 Intent,然后您可以将其传递给其他应用。

关于java - Android - 其他应用窃取我的 Intent 接收器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6515687/

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