什么决定哪个应用程序对蓝牙AVRCP命令起作用?
背景:我有一台A2DP / AVRCP蓝牙耳机(诺基亚BH-505),可用于收听播客和音乐。当然,我会使用不同的应用程序收听这些内容。蓝牙耳机具有一些与音频相关的“命令”(AVRCP)按钮-具体而言:“下一首”,“上一首”和“播放/暂停” 目前,只要我按任意一个命令,我安装的一个音乐播放器(Meridian)都会得到该命令-即使它不处于活动状态也是如此。因此,当我单击“播放/暂停”打算暂停播客(DoggCatcher)时,子午线被激活并开始与播客一起播放音乐。 两个玩家都设置为使用耳机:DoggCatcher的“绑定到耳机”已打开,子午线的“耳机按钮”已打开。我目前在GT-S5570上使用无根的股票Android 2.2.1,但将来可能会生根并升级到2.3 CyanogenMod(或诸如此类)。 忽略细节,我对此的疑问更为笼统: Android如何确定哪个应用程序可以对这些命令做出反应?我对一个非常技术性的答案也很感兴趣。 在实用方面,我感兴趣: 我是否必须摆弄每个应用程序的设置来确定哪个应用程序使用命令,或者是否有一些通用的方法来确定这些命令? 有没有一种方法可以配置它,以使实际上处于活动状态的应用程序始终自动获得优先级?(正如在另一个问题中被部分问到的) 这个问题与类似问题有何不同: “如何在蓝牙遥控器上设置“播放”按钮行为” –仅有实际的,不同的焦点,到目前为止还没有答案,我也对可能需要植根或自定义固件(尤其是CyanogenMod)的答案感兴趣。 更改用于处理耳机控制的默认应用程序 -确切的问题已得到解决,但不能以回答我的问题的方式进行,尽管确实提供了有关工作原理的一些提示。 如何使耳机上的按钮控制除音乐播放器以外的其他功能?-在实用方面有部分类似的问题,但不着重于解释其实际工作方式,唯一的答案是集中在我不询问的部分上(仅使一个应用程序接收命令)。 为什么所有声音应用都一次获得蓝牙按钮事件 -非常相似,但是询问一个特定问题(所有媒体播放器都收到AVRCP命令)