Comment arrêter Wakelocks depuis n'importe quelle application Android sans racine

Vous êtes-vous déjà demandé pourquoi votre téléphone Android consomme si rapidement la durée de vie de votre batterie lorsque l'écran est éteint? Wakelocks! Voici un tutoriel sur la façon d'arrêter les wakelocks !

Vous êtes-vous déjà endormi la nuit avec un téléphone complètement chargé, juste pour vous réveiller avec une batterie faible? Ne vous inquiétez pas, cela nous est tous arrivé. Même avec Mode sommeil et tout Les efforts de Google pour améliorer la durée de vie de la batterie sur Android, la durée de vie de la batterie inutilisée n’est pas vraiment idéale. Surtout si de nombreuses applications sont installées. Le coupable est très probablement un wakelock qui se comporte mal d'une application comme Facebook, Messenger, Snapchat, etc. Heureusement, vous pouvez facilement arrêter ces wakelocks à l'aide de simples commandes shell. Et vous n’avez même pas besoin de root pour ça! Aujourd'hui, nous allons vous montrer comment vous pouvez arrêter les wakelocks depuis n'importe quelle application Android

sans utiliser root. Cela peut être fait sur n’importe quel téléphone Android, à condition que vous disposiez d’ADB.


Arrêtez Wakelocks depuis n'importe quelle application Android

Tutoriel vidéo de notre chaîne YouTube au cas où vous préférez une aide visuelle

Avant de commencer quoi que ce soit, vous devrez configurer ADB sur votre téléphone et votre ordinateur. Si vous ne l'avez pas encore fait, veuillez vous référer à ce tutoriel afin de vous installer.

À moins que vous ne soyez complètement sûr de ce qui décharge votre batterie, nous allons utiliser un petit outil appelé « Better Battery Stats » afin de trouver le coupable. Le développeur est actif sur nos forums, vous pouvez donc trouver l'application ici. Cependant, si vous souhaitez soutenir le développeur, vous pouvez également le télécharger depuis le Google Play Store, où il s'agit d'une application payante. Il fournit de nombreuses autres statistiques telles que les états du processeur, les réveils d'applications et les informations sur le réseau.

Meilleures statistiques de batterieDéveloppeur: Sven Knispel

Prix ​​: 1,99.

4.

Télécharger

Il nécessite une racine sur les appareils équipés d'Android KitKat et versions ultérieures. Cependant, il existe une solution de contournement de commande ADB pour les appareils non rootés. Connectez votre appareil à votre ordinateur, soit via le débogage USB, soit via le débogage WiFi. Assurez-vous qu'il est connecté en utilisant la commande :

adb devices

Ensuite, nous allons démarrer le shell Android à l'aide de la commande suivante :

adb shell

Ensuite, nous allons accorder à BetterBatteryStats qui vient d'être installé l'autorisation BATTERY_STATS avec :

pmgrantcom.asksven.betterbatterystats_xdaeditionandroid.permission.BATTERY_STATS

Fait! Désormais, BBS fonctionnera sur votre appareil non rooté.

Remarque: si vous avez acheté Better Battery Stats sur le Google Play Store, remplacez « com.asksven.betterbatterystats_xdaedition » par simplement « com.asksven.betterbatterystats » dans la commande ADB ci-dessus.

Trouver le coupable

Vous disposez de nombreuses applications sur votre téléphone, il n'existe donc pas de moyen simple de savoir avec certitude ce qui consomme votre batterie. C'est pourquoi nous utilisons Better Battery Stats pour trouver le wakelock responsable. Après avoir configuré l'application, chargez votre téléphone, puis débranchez-le et laissez-le tranquille avec l'écran éteint pendant au moins 30 minutes. Cela devrait donner à l’application suffisamment de temps pour tout enregistrer. Une fois dans l'application, sélectionnez Partial Wakelocks et voyez quelle application cause le plus de dégâts.

Arrêter le Wakelock

Maintenant que nous savons ce qui consomme votre batterie, nous pouvons y mettre un terme. Dans notre cas, c'est Snapchat. Quel que soit votre coupable, assurez-vous de trouver le nom du package de l'application à l'aide de Package Name Viewer sur le Play Store, car nous en aurons besoin pour notre commande ADB ci-dessous.

Visionneuse de noms de packages 2.0Développeur: csIng

Prix ​​: Gratuit.

4.5.

Télécharger

Comme vous avez évidemment déconnecté votre téléphone pour utiliser de meilleures statistiques de batterie, rebranchez-le à votre ordinateur pour utiliser à nouveau ADB. Encore une fois, vérifiez s'il est correctement connecté à

adb devices

Et entrez dans le shell en utilisant :

adb shell

Maintenant, en utilisant le nom du package de votre application cible, envoyez la commande suivante :

cmdappopssetcom.android.applicationWAKE_LOCKignore

Bien sûr, vous allez remplacer "com.android.application" par le nom du package de votre application. Dans mon cas:

cmdappopssetcom.snapchat.androidWAKE_LOCKignore

Si vous avez effectué toutes les étapes correctement, toutes les demandes de wakelock de l'application seront ignorées par le système Android. Toutes nos félicitations!


Explication

Un wakelock, en termes simples, est simplement un moyen pour une application de garder le processeur/l'écran/d'autres éléments éveillés lorsque le téléphone est inactif afin d'effectuer une tâche en arrière-plan spécifique. Certaines applications ont légitimement besoin de wakelocks pour fonctionner correctement, mais le problème survient lorsque certaines applications détiennent des wakelocks. à plusieurs reprises, tenez-les longtemps sans les laisser tomber, ou effectuez des tâches réseau et CPU excessives/inutiles en tirant parti de ces éléments. réveils.

Exemple concret: des applications comme Snapchat, Facebook, Messenger ou d'autres applications de médias sociaux incluent des wakelocks qui se comportent mal. Ce didacticiel est simplement un moyen d'empêcher que ces wakelocks ne se reproduisent sans désinstaller l'application. Si, toutefois, vous remarquez que l'application cesse de fonctionner correctement après avoir utilisé cette commande ADB, vous pouvez rétablir les paramètres suivants. comme ils l'étaient en réexécutant la commande et en changeant "ignorer" en "autoriser", ou en désinstallant simplement puis en réinstallant l'application encore.