Comment désactiver l’alerte  » Batterie faible  » (qui suggère  » économiseur de batterie « ) dans Android Marshmallow


Contexte

Dans Android, la notification d'alerte de batterie faible est intégrée au système d'exploitation à un niveau qui la rend impossible à désactiver par le biais d'un paramètre ou d'une application développée pour Android.


Cela ne signifie pas qu'elle ne peut pas être désactivée. Cela signifie simplement que nous, utilisateurs finaux, ne pouvons pas le faire et qu'il est impossible de créer une application Android qui le fera.

La façon dont cela peut être fait est de personnaliser Android. D'un point de vue pratique, presque personne ne peut le faire, mais certaines personnes le peuvent.


Voici une façon de le décomposer en étapes :

Étape 1 : télécharger le code source d'Android, l'installer sur un ordinateur configuré pour développer/programmer le système Android. Ceci est différent de la configuration d'Android pour le développement d'applications. Pour le développement d'applications, Android est utilisé tel quel, non personnalisé, mais utilisé comme point de départ. Les applications sont créées en écrivant des programmes qui demandent à Android de faire certaines choses. Si Android ne peut pas faire quelque chose, alors les apps ne peuvent pas le faire non plus.

Donc, aussi bizarre que cela puisse paraître, l'une des choses qu'Android ne peut pas faire est de se retenir de générer la notification de batterie faible. La charge particulière où elle entre en vigueur est intégrée au téléphone et elle ne peut pas être modifiée sans personnaliser Android.

L'étape 1 consiste à placer le code source d'Android dans un ordinateur où il peut être modifié et utilisé pour construire une édition personnalisée d'Android. Généralement, cette étape est effectuée par les vendeurs de téléphones. Puisque Android est open source, le code source est disponible pour tout le monde.

Étape 2 : trouver l'endroit dans le code source d'Android où l'alerte est générée. Modérément facile, à condition que l'étape 1 soit faite. Je n'ai pas de système avec le code source d'Android. Cependant, j'ai trouvé cet exemple de code Android qui déclenche une "diffusion" du système lorsque la batterie est faible. Je l'inclus pour vous donner une idée de ce qu'est le code. J'ai ajouté un commentaire, qui commence par deux barres obliques, comme ceci //, pour montrer comment ce code pourrait être modifié pour désactiver la diffusion de la batterie faible, mais la diffusion n'est pas la même chose que l'alerte/popup. La diffusion déclenche beaucoup de choses ; la notification de batterie faible est l'une de ces choses.

  1. /* La diffusion ACTION_BATTERY_LOW est envoyée dans ces situations : 
  2. * - is just un-plugged (previously was plugged) and battery level is 
  3. * less than or equal to WARNING, or 
  4. * - is not plugged and battery level falls to WARNING boundary 
  5. * (becomes <= mLowBatteryWarningLevel). 
  6. */ 
  7. final boolean sendBatteryLow = !plugged 
  8. && mBatteryStatus != BatteryManager.BATTERY_STATUS_UNKNOWN 
  9. && mBatteryLevel <= mLowBatteryWarningLevel 
  10. && (oldPlugged || mLastBatteryLevel > mLowBatteryWarningLevel); 
  11.  
  12. ... 
  13. // TO TURN OFF BATTERY LOW BROADCAST, DELETE THE FOLLOWING 
  14. if (sendBatteryLow) { 
  15. mSentLowBatteryBroadcast = true; 
  16. statusIntent.setAction(Intent.ACTION_BATTERY_LOW); 
  17. mContext.sendBroadcast(statusIntent); 

La diffusion est un message à l'intérieur d'Android qui déclenche de nombreuses actions dans Android. La pop up d'alerte de batterie faible n'est qu'une de ces actions. Donc, ce que nous devons trouver dans le code source, c'est l'alerte/le pop-up, pas la diffusion.

Étape 3 : modifier le code source de manière à éliminer l'alerte. L'étape la plus simple du processus. Il s'agirait d'un changement très minuscule dans le système global.

Etape 4 : " Build " (compiler) Android avec les modifications du code source effectuées à l'étape 3. Modérément facile à Majoritairement difficile, selon l'exhaustivité du travail effectué à l'étape 1. Il est facile d'obtenir le code source et d'effectuer les modifications. Le faire de manière à ce que le système puisse être recompilé est beaucoup plus compliqué. Les personnes qui travaillent sur Android pour Google ou sur ses déclinaisons chez des sociétés comme Samsung, AT&T, Verizon, etc. le font tout le temps et pour eux, c'est facile, mais il faut beaucoup de choses pour arriver à cette position, à moins d'être l'un d'entre eux, d'avoir accès à leurs systèmes, aux mots de passe nécessaires et aux directives techniques de ceux qui ont parcouru ce chemin avant nous.

Étape 5 : installer votre version personnalisée d'Android sur votre téléphone. Selon le modèle de téléphone que vous avez, cela pourrait être impossible. Le meilleur scénario est similaire au processus de construction de l'étape 4. À l'étape 4, Android est construit sur un ordinateur de développement, ce qui est en général plus facile que de le construire sur un téléphone. Une fois qu'il est construit sur l'ordinateur de développement, le mettre sur le téléphone nécessite de faire face aux défis techniques intégrés dans le matériel du téléphone. Par exemple, je pense qu'il serait impossible d'installer un androïde personnalisé sur un téléphone Droid Turbo 2 de Motorola. Il serait beaucoup plus facile de l'installer sur un téléphone Nexus. De difficile à impossible, l'étape 5 va impliquer une agonie dans le meilleur des cas.

Ce que cela signifie

Dans la pratique, il n'y a rien que votre ou moi puissions faire pour arrêter le message de batterie faible. Si je devais parier, je parierais que l'alerte de batterie faible survivra à chaque personne accédant à quora aujourd'hui.

D'un autre côté, si nos amis de Google voulaient faire ce changement, l'effort impliqué serait à peu près le même que d'ouvrir votre CV sur un traitement de texte et de corriger la mauvaise orthographe d'un des endroits où vous avez travaillé. La raison pour laquelle c'est si simple pour Google est qu'ils n'ont qu'à faire une simple modification du code source, ce qui revient à modifier le CV. Ils ont déjà toutes les autres étapes configurées, fonctionnant la plupart du temps en pilote automatique qu'ils n'ont pas besoin de toucher.