Outils de suivi du comportement en arrière-plan des applications

Android 13 introduit le concept de suivi de la consommation d'énergie, qui est un processus qui surveille l'utilisation de la batterie par les applications au premier plan ou en arrière-plan pour déterminer si elles enfreignent certaines règles. Android 13 contient deux outils de suivi de la consommation d'énergie : celui des services de premier plan et celui de l'utilisation de la batterie en arrière-plan. Au lieu d'utiliser vos propres mécanismes pour déterminer l'utilisation abusive de la batterie par les applications, nous vous recommandons d'utiliser ces trackers pour surveiller l'utilisation excessive de la batterie et alerter les utilisateurs.

Outil de suivi des services de premier plan

Les services de premier plan peuvent s'exécuter et utiliser la batterie pendant une période prolongée. Le suivi des services de premier plan affiche une notification aux utilisateurs lorsqu'un service de premier plan est exécuté depuis longtemps, mais qu'il est invisible, par exemple lorsqu'un utilisateur a fermé la notification du service. Si l'utilisateur clique sur la notification, le gestionnaire de tâches s'affiche et lui permet d'arrêter le service de premier plan. Ce suivi est activé par défaut.

Suivi de l'utilisation de la batterie en arrière-plan

Les applications peuvent décharger la batterie en arrière-plan à l'insu de l'utilisateur. Le suivi de la batterie en arrière-plan surveille l'utilisation de la batterie pour chaque application. Dans ce contexte, l'utilisation de la batterie est définie par trois dimensions : l'application au premier plan, le service au premier plan exécutant quelque chose qui n'est pas visible et la partie en arrière-plan de l'application. Si la partie en arrière-plan de l'utilisation de la batterie par l'application dépasse un certain seuil, l'application est déplacée dans un bucket restreint, ce qui la limite à un job par jour. Ce suivi est désactivé par défaut. Pour activer ce suivi, exécutez les commandes suivantes :

adb shell device_config put activity_manager bg_auto_restrict_abusive_apps 1
adb shell device_config put activity_manager bg_current_drain_auto_restrict_abusive_apps_enabled 1