Grâce à une nouvelle autorisation implémentée dans Android Oreo, les applications système sont désormais capables de configurer des écouteurs pour détecter les appuis longs sur les touches de volume.
L'ajout de fonctionnalités supplémentaires à divers boutons matériels et logiciels de nos appareils est quelque chose que les passionnés d'Android font depuis un certain temps. La plupart des gens connaissent des applications telles que Mappeur de boutons du développeur reconnu XDA flar2, et nous avons même parlé de d'autres solutions de remappage à l'époque le Galaxy S8 est sorti. Bien que ces solutions gèrent ces actions d'une certaine manière, Google semble implémenter un écouteur dans Android Oreo pour appuyer longuement sur les touches de volume. Cela signifie que potentiellement, les applications futures pourraient être en mesure de réagir aux pressions prolongées sur les touches de volume, même lorsque l'écran est désactivé, ce qui pourrait être utilisé pour apporter une fonctionnalité souvent demandée à partir de ROM personnalisées: contrôle des pistes musicales avec la touche de volume presses.
Nous voulons le mentionner cette fonctionnalité n'est pas réellement activé dans la version destinée aux utilisateurs dont nous disposons actuellement. Cependant, sa prise en charge existe, comme en témoigne le commit que nous avons trouvé, ce qui signifie qu'elle peut être activée par l'OEM pour votre appareil spécifique. Comme mentionné, les applications de remappage traditionnelles fonctionnent en détectant si un KeyEvent a été envoyé (en appuyant longuement, ces applications mesurent le temps entre un key down et key up event alors qu'avec des doubles pressions, ils mesurent le temps entre les pressions vers le bas), mais ces KeyEvents ne sont envoyés que lorsque l'écran est sur. En outre, ils nécessitent également généralement l’utilisation d’un service d’accessibilité, ce qui peut nuire aux performances.
Votre solution typique de remappage des boutons peut être considérée comme une solution de contournement à utiliser pour allumer ou éteindre la torche, ouvrir une application, abaisser le panneau de notification, etc. Cependant, ce que Google a implémenté dans Android Oreo va encore plus loin en permettant aux applications système de configurer elles-mêmes ces écouteurs à pression longue sur les boutons de volume. Cela pourrait permettre à l'utilisateur de déclencher quelque chose au sein de l'application elle-même une fois que la plateforme détecte qu'un bouton de volume est resté enfoncé pendant quelques secondes.
De la manière dont Google a inclus la prise en charge de cela dans Android Oreo, cela ne fonctionnera que pour les applications « privilégiées » (c'est-à-dire le système préinstallé) prêtes à l'emploi. L'OEM doit simplement permettre à l'application privilégiée d'avoir le android.permission.SET_VOLUME_KEY_LONG_PRESS_LISTENER
autorisation afin de définir l'auditeur. Cependant, nous avons pu accorder des autorisations comme celles-ci avec les commandes ADB, il est donc possible que ceux d'entre nous qui le savent puissent également définir manuellement cela pour des applications tierces.