Le contexte : J'ai une oreillette bluetooth A2DP/AVRCP ( Nokia BH-505 ) que j'utilise activement pour écouter des podcasts et de la musique. Bien sûr, je les écoute avec différentes applications. L'oreillette Bluetooth dispose de quelques boutons de "commande" (AVRCP), relatifs à l'audio - en particulier : "piste suivante", "piste précédente" et "lecture/pause".
Actuellement, chaque fois que j'appuie sur l'une des commandes, l'un des lecteurs de musique que j'ai installés ( Meridian ) reçoit toujours la commande, même s'il n'est pas actif. Ainsi, lorsque je clique sur "play/pause" dans l'intention de mettre en pause un podcast ( DoggCatcher ), le Meridian est activé et commence à jouer de la musique en même temps que le podcast.
Les deux joueurs sont réglés pour utiliser le casque : DoggCatcher a activé l'option "Bind to headset" et Meridian a activé l'option "Headset Buttons". J'utilise actuellement la version stock Android 2.2.1 non enracinée sur le GT-S5570, mais il est possible que je l'enracine et le mette à niveau vers la version 2.3 CyanogenMod (ou autre) à l'avenir.
Ignorant les spécificités, ma question à ce sujet est plus générale :
- Comment Android détermine-t-il quelle application peut réagir à ces commandes ? Je suis intéressé même par une réponse très technique.
Sur le plan pratique, je m'intéresse à :
- Dois-je modifier les paramètres de chaque application pour déterminer quelle application prend les commandes, ou existe-t-il un moyen général de le déterminer ?
- Y a-t-il un moyen de configurer ceci de sorte que l'application qui est réellement actif aurait-elle toujours automatiquement la priorité ? (comme cela a été demandé en partie dans une autre question )
En quoi cette question diffère-t-elle des questions similaires ?
-
"Comment régler le comportement du bouton 'Play' sur la télécommande Bluetooth" - seulement pratique, objectif différent, jusqu'à présent n'a pas de réponses, et je suis également intéressé par les réponses qui nécessiteraient le rooting ou firmware personnalisé (en particulier CyanogenMod).
-
Modifier l'application par défaut pour gérer les commandes du casque - un problème exact qui a été corrigé, mais pas d'une manière qui répondrait à mes questions, bien que cela donne quelques indices sur la façon dont les choses fonctionnent.
-
Comment puis-je faire en sorte que le bouton de mes écouteurs contrôle autre chose que le lecteur de musique standard ? - Question en partie similaire sur le plan pratique, mais aucune explication sur la façon dont cela fonctionne réellement, et la seule réponse est axée sur la partie que je ne demande pas (faire en sorte qu'une seule application reçoive les commandes).
-
Pourquoi toutes les applications sonores reçoivent-elles des événements liés aux boutons Bluetooth, tous en même temps ? - Très similaire, mais concernant un problème spécifique (tous les lecteurs multimédia reçoivent la commande AVRCP).