Antecedentes: Tengo un auricular Bluetooth A2DP / AVRCP ( Nokia BH-505 ) que uso activamente para escuchar tanto podcasts como música. Por supuesto, los escucho con diferentes aplicaciones. El auricular bluetooth tiene algunos botones de "comando" (AVRCP), relevantes para el audio - en específico: "siguiente pista", "pista anterior" y "reproducir / pausar"
Actualmente, cada vez que presiono cualquiera de los comandos, uno de los reproductores de música que he instalado ( Meridian ) siempre recibe el comando, incluso cuando no está activo. Entonces, cuando hago clic en "reproducir / pausar" con la intención de pausar un podcast ( DoggCatcher ), Meridian se activa y comienza a reproducir música junto con el podcast.
Ambos jugadores están configurados para usar los auriculares: DoggCatcher tiene "Vincular a auriculares" activado y Meridian tiene "Botones de auriculares" activados. Actualmente estoy usando Android 2.2.1 no rooteado en GT-S5570 pero podría estar rooteando y actualizando a 2.3 CyanogenMod (o tal), en el futuro.
Ignorando los detalles, mi pregunta sobre esto es más general:
- ¿Cómo determina Android qué aplicación reacciona a estos comandos? Estoy interesado incluso en una respuesta muy técnica.
En el aspecto práctico me interesan:
- ¿Tengo que jugar con la configuración de cada aplicación para determinar qué aplicación toma los comandos, o hay alguna forma general de determinar esto?
- ¿Hay alguna forma de configurar esto para que la aplicación que está realmente activa siempre obtenga automáticamente la prioridad? (como se preguntó en parte en otra pregunta )
Cómo esta pregunta difiere de preguntas similares:
"Cómo configurar el comportamiento del botón 'Reproducir' en el control remoto Bluetooth" : solo un enfoque práctico y diferente, hasta ahora no tiene respuestas, y también estoy interesado en respuestas que requieran rooting o firmware personalizado (especialmente CyanogenMod).
Cambie la aplicación predeterminada para manejar los controles de los auriculares : un problema exacto que se solucionó, pero no de una manera que respondería a mis preguntas, aunque da algunas pistas sobre cómo funcionan las cosas.
¿Cómo puedo hacer que el botón de mis auriculares controle algo más que el reproductor de música original? - pregunta en parte similar en el lado práctico, pero no se enfoca en explicar cómo funciona realmente, y la única respuesta se centra en la parte que no estoy preguntando (hacer que solo una aplicación reciba los comandos).
¿Por qué todas las aplicaciones de sonido obtienen eventos de botón de Bluetooth, todo a la vez ? Muy similar, pero preguntando sobre un problema específico (todos los reproductores multimedia obtienen el comando AVRCP)