Si vous possédez un téléphone Android et que vous avez parfois l'impression que la batterie se décharge à une vitesse folle, même en l'utilisant à peine, vous avez probablement déjà entendu parler de… Le mode Doze et son rôle dans la réduction de la consommation d'énergie en veilleC'est une fonctionnalité présente dans le système depuis des années, mais elle reste relativement méconnue, ce qui signifie que de nombreux utilisateurs ne comprennent pas pourquoi les notifications sont retardées ou pourquoi certaines applications semblent « en veille ».
Dans cet article, nous allons approfondir le sujet. Qu'est-ce que Doze, comment ça fonctionne, quels types de Doze existent, comment cela affecte-t-il vos applications, comment le configurer et quels outils sont disponibles pour en tirer le meilleur parti ?Vous trouverez également des conseils pour les développeurs, des options root avancées et des solutions pour les cas où les notifications arrivent en retard sur les téléphones modernes fonctionnant sous Android 13 ou Android 14.
Qu'est-ce que le mode Doze sur Android et à quoi sert-il ?
Doze, pour faire simple, Le système d'économie d'énergie qu'Android utilise pour limiter autant que possible l'activité en arrière-plan lorsque le téléphone est « posé sur une table ». sans que personne n'y touche. Il était livré avec Android 6.0 Marshmallow et a été conçu pour résoudre l'un des plus gros problèmes des smartphones : la consommation excessive de la batterie lorsqu'on ne les utilise pas.
Lorsque Doze entre en jeu, le téléphone entre dans une sorte de hibernation contrôlée dans laquelle l'utilisation du processeur, l'accès au réseau, les synchronisations et de nombreuses alarmes sont presque entièrement réduits.L'idée est simple : si l'utilisateur ne regarde pas son téléphone, le système en profite pour se mettre en veille autant que possible.
Cette fonctionnalité a été améliorée à chaque version d'Android. Sous Marshmallow, elle nécessitait que le téléphone soit… Pourtant, même avec l'écran éteint et sans chargeur Pour l'activer. À partir d'Android 7.0 Nougat est apparue une fonction « Doze légère » qui s'active simplement en éteignant l'écran, même en mouvement.
Au quotidien, Doze est ce « héros discret » qu'on ne voit sur aucun menu avec un nom à rallonge, mais qui… Cela fait toute la différence entre simplement tenir jusqu'à la fin de la journée ou devoir endurer plusieurs heures supplémentaires. avec la même charge.
Fonctionnement de Doze : cycles de suspension et périodes d’entretien
Le comportement de Doze repose sur un cycle répétitif : de longues périodes d'arrêt complet, interrompues par de brèves fenêtres de maintenance.Durant ces périodes, Android « ouvre la main » et permet aux applications d'effectuer le travail en attente.
Lorsque les conditions de veille sont activées (écran éteint, pas de chargeur et, en mode Doze complet, aucun mouvement notable), le système entre dans un état de suspension dans lequel Il restreint fortement l'accès au réseau, retarde les alarmes normales et interrompt les synchronisations et les tâches planifiées.Tout ce qui peut attendre, attend.
De temps à autre, l'appareil sort brièvement de cette suspension et entre dans un période de maintenanceÀ ce stade, les applications peuvent :
- Lancement des synchronisations différées (par exemple, télécharger des photos en attente ou mettre à jour des bases de données).
- Exécuter les tâches planifiées en utilisant JobScheduler ou d'autres planificateurs.
- Alertes d'adresse qui avaient été reportées pendant que Doze était actif.
- Profitez de l'accès momentané au réseau envoyer et recevoir des données.
Ce qui est intéressant, c'est qu'Android est en train de… allonger progressivement les périodes de repos entre les fenêtres de maintenancePlus le téléphone reste inutilisé, plus il passe de temps en mode veille et moins il est actif, jusqu'à atteindre des intervalles de plusieurs heures en mode Doze complet.
L'appareil continue de surveiller les mouvements avec le détecteur de mouvement significatif (SMD) lorsqu'il est en mode veille prolongée. Dès qu'il détecte que vous le prenez en main, le déplacez ou rallumez l'écran, il sort du mode veille prolongée et reprise du fonctionnement normal de toutes les applications.
Configuration matérielle et de service requise pour le bon fonctionnement de Doze
Pour que Doze puisse déployer toutes ses optimisations, l'appareil doit posséder certains éléments, tant au niveau matériel qu'au niveau des services système. C'est important pour les développeurs, mais cela permet également de comprendre pourquoi. Tous les téléphones mobiles n'implémentent pas Doze de la même manière..
Tout d'abord, Android a besoin d'un service de messagerie basé sur le cloud, tel que Messagerie Firebase Cloud (FCM)Cela vous permet de recevoir des notifications push même lorsque le système est inactif. Ces messages peuvent servir de déclencheurs externes pour les applications… une courte fenêtre de temps pour travailler en mode Dozesans désactiver complètement l'économie d'énergie.
De plus, pour la version complète de Doze (celle qui nécessite que l'appareil mobile soit immobile), un Capteur de mouvement significatif (SENSOR_TYPE_SIGNIFICANT_MOTION, SMD)Ce capteur permet au système de déterminer si l'appareil est réellement immobile sur une table ou une table de chevet.
Lorsque le téléphone mobile répond à ces exigences et Doze est activé:
- Avec SMD disponibleToutes les optimisations de Doze sont activées (y compris les optimisations légères).
- Sans CMSSeul le mode Doze léger, qui s'active lorsque l'écran est éteint, est appliqué, et non le mode profond basé sur l'immobilité.
Au niveau du système, les fabricants désignent souvent certains services comme Doze exempt (téléphonie, SMS/MMS, services système critiques, etc.) afin qu'ils restent fonctionnels même lorsque l'appareil est en veille. L'utilisateur peut également exclure manuellement certaines applications de ces optimisations, mais cela aura un impact sur l'autonomie de la batterie.
Cycle de vie de Doze : quand il entre en action et quand il se désactive
Le cycle de vie Doze peut se résumer au parcours d'un appareil entre son état actif, son passage en mode veille et sa réactivation. Pour qu'un système considère un appareil comme inactif et lance le mode Doze, plusieurs conditions doivent être remplies. conditions d'entrée.
En mode Deep Doze classique, la plateforme vérifie principalement deux choses : que L'écran reste éteint pendant un certain temps et l'appareil est immobile.Si, de plus, l'appareil n'est pas connecté au chargeur, les conditions idéales sont réunies pour que le système commence à appliquer des restrictions à la batterie.
Il est très important de savoir que le Le mode Doze ne s'applique pas lorsque le téléphone est en charge.Si l'appareil est branché, le système comprend que la priorité n'est pas tant d'économiser la batterie que de maintenir une expérience utilisateur complète et des synchronisations actives.
Pour sortie DozeAndroid surveille plusieurs critères de sortie. Il se désactive automatiquement dès qu'il détecte :
- Interaction directe avec l'utilisateur (toucher l'écran, appuyer sur les boutons, déverrouiller le téléphone portable).
- Mouvement évident de l'appareil d'après les capteurs.
- Allumer l'écranne serait-ce que pour voir les notifications.
- Le réveil sonne bientôt. Programmé avec réveil.
Les notifications elles-mêmes, si elles ne réveillent pas l'écran ou n'impliquent aucune interaction, Ils ne retirent pas le dispositif Doze.Elles s'accumulent et s'affichent lorsque le système entre en période de maintenance ou lorsque l'utilisateur reprend son téléphone portable.
Restrictions pendant le mode Doze et différences avec le mode Doze léger
En mode Doze, Android applique de nombreuses limitations afin de réduire la consommation d'énergie. Ces restrictions varient en fonction de… Douzaine complète ou l' Mode Doze Léger (introduites dans Android 7.0), mais elles partagent l'idée sous-jacente : empêcher les applications de générer un « bruit » excessif en arrière-plan.
Dans la version complète de Doze, le système impose restrictions très strictes:
- Aucun accès réseau pour les applications pendant les périodes de suspension, sauf exceptions très spécifiques (par exemple, les notifications push à haute priorité).
- Les verrous de réveil d'application sont ignorésles empêchant de maintenir le processeur éveillé inutilement.
- Les alarmes normales sont reportées., à l'exception des réveils ou de ceux créés avec
setAndAllowWhileIdle()osetExactAndAllowWhileIdle()qui ont des limites de fréquence par application. - Aucune analyse Wi-Fi ni recherche de réseau n'est effectuée. pendant que la suspension profonde dure.
- Synchronisations SyncAdapter et tâches planifiées avec JobScheduler Elles sont reportées à la prochaine fenêtre de maintenance.
- Applications qui gèrent les SMS et les MMS Ils sont temporairement placés sur une liste d'autorisation afin de pouvoir traiter les messages même en mode Doze.
En mode Doze léger, qui s'active dès que vous éteignez l'écran même si le téléphone est déplacé, les restrictions Ils sont un peu plus douxmais elles restent pertinentes :
- L'accès réseau illimité n'est pas autorisé pour les tâches en arrière-plan., sauf pendant les périodes de maintenance.
- Les tâches, les synchronisations et le travail en arrière-plan sont différenciés, quoique de manière moins stricte..
- Les messages en temps réel (appels, messagerie instantanée, etc.) peuvent être reçussurtout s'ils utilisent des messages à haute priorité via FCM pour réactiver temporairement le réseau.
Le tableau conceptuel ressemblerait à ceci : en mode Doze complet, le téléphone se comporte presque comme s’il était éteint, autorisant uniquement… notifications push prioritaires et tâches critiquesEn mode Doze Light, la connectivité est maintenue, mais une grande partie du trafic non essentiel est limitée.
Relation entre Doze, la mise en veille des applications et la gestion des applications inactives
Doze n'est pas le seul à lutter pour préserver l'autonomie de la batterie. Android inclut une autre fonctionnalité importante appelée App veillequi surveille le comportement des applications que l'utilisateur n'a pas ouvertes ou utilisées activement depuis un certain temps, et aide à identifier les applications qui consomment le plus de batterie.
Alors que Doze se concentre sur état général de l'appareilApp Standby se concentre sur comportement individuel de chaque applicationSi une application n'est pas utilisée pendant un certain temps et ne remplit pas certaines conditions, le système la marque comme « inactive » et restreint son accès au réseau en arrière-plan.
Pour éviter qu'une application soit considérée comme inactive en raison de la mise en veille de l'application, doit satisfaire à l'un de ces critères:
- Que l'utilisateur ouvrir explicitement au cours d'une période récente.
- Avoir un processus au premier plan (une activité visible ou un service légitime au premier plan, comme la lecture de musique ou le téléchargement de photos).
- Cela génère Notifications visibles que l'utilisateur voit sur l'écran de verrouillage ou dans la barre des tâches.
Lorsque le téléphone est en mode Doze, le temps qu'il passe dans ce mode non comptabilisé pour la veille de l'applicationCependant, les applications marquées comme inactives peuvent effectuer des activités normales au moins une fois par jour, même si l'appareil reste en mode veille prolongée.
Dès que vous branchez votre téléphone à la prise de courant, Android Restrictions de veille de l'application Lifts et permet à ces applications inactives de retrouver un accès gratuit au réseau et d'exécuter les tâches et synchronisations différées.
Expérience utilisateur réelle : comment Doze change la vie au quotidien
Au-delà des détails techniques, la question que se posent la plupart des gens est la suivante : Doze fait-il vraiment une différence au quotidien ? La réponse, dans la grande majorité des cas, est oui, et même beaucoup.
Sur des appareils comme l'ancien Nexus 5 ou des modèles équivalents, de nombreux utilisateurs ont signalé qu'après la mise à jour vers Android 6.0, Ils pouvaient laisser le téléphone sur la table toute la nuit ou pendant plusieurs heures sans que la batterie ne se décharge complètement.Alors qu'auparavant 10 à 20 points de charge étaient perdus simplement en laissant le téléphone portable en veille, cette perte a été considérablement réduite par la suite.
Ceux qui utilisent leur téléphone portable modérément, avec de longues périodes d'écran éteint et une utilisation standard des applications, remarquent que Elles peuvent tenir une ou deux journées complètes sans être rechargées., alors que c'était auparavant impensable, et cela vaut la peine de continuer Conseils pour prolonger la durée de vie de la batterieCependant, les utilisateurs très intensifs, qui laissent leur écran allumé presque en permanence, perçoivent moins de différence, car le mode Doze n'intervient quasiment pas lorsqu'ils interagissent en continu.
L'inconvénient est que, sur certains téléphones et configurations, Doze peut provoquer Les notifications d'applications comme Facebook, Gmail ou la messagerie arrivent en retard.Par exemple, être au travail sans recevoir aucune notification pendant un certain temps, puis, lorsque vous prenez votre téléphone ou rentrez chez vous, recevoir soudainement une avalanche de notifications qui auraient dû arriver plus tôt.
Dans ces cas, vous pouvez choisir Exclure certaines applications de l'optimisation de la batterie Cela leur permet de maintenir une réactivité plus rapide, moyennant une consommation d'énergie légèrement supérieure. Il s'agit de trouver un équilibre entre l'autonomie de la batterie et l'immédiateté des notifications.
Comment désactiver Doze pour des applications spécifiques dans les paramètres Android
Si vous avez une application critique (par exemple, une messagerie professionnelle) et que vous ne voulez pas que Doze la ralentisse, Vous pouvez le supprimer des optimisations de la batterie. sans désactiver complètement Doze. Le processus peut varier légèrement selon la couche de personnalisation, mais il reste globalement similaire.
Les étapes typiques Pour désactiver Doze dans une application, vous devez :
- Se connecter Paramètres > Applications et notifications (ou un menu similaire sur votre mobile).
- Cliquer sur Voir toutes les applications si vous ne voyez pas celui qui vous intéresse dans la liste récente.
- Sélectionnez l'application (par exemple, WhatsApp, Gmail, Facebook, etc.).
- Dans les détails de l'application, accédez à la section Batterie (Cela peut se trouver dans la section « Avancé » ou une section similaire).
- Cliquer sur Optimisation de la batterie.
- Modifiez l'affichage de « Applications non optimisées » à « Toutes les applications » pour voir la liste complète.
- Trouvez l'application souhaitée et appuyez dessus.
- Choisissez l'option « Ne pas optimiser » et confirmez en cliquant sur Accepter ou Terminé.
À partir de ce moment, Android cessera d'appliquer les restrictions Doze à cette application (du moins en ce qui concerne l'optimisation standard de la batterie). Il est important de ne pas abuser de cette option et de la réserver à… quelques applications qui en ont vraiment besoinCar si l'on exclut trop de personnes, le gain d'autonomie est considérablement réduit.