Déboguer les wakelocks en local

Vous pouvez utiliser plusieurs outils pour déboguer une application exécutée en local qui utilise des verrous de réveil. Ces outils peuvent vous aider à identifier et à résoudre les problèmes de performances.

Les outils suivants peuvent vous aider à déboguer ou à optimiser vos verrous de réveil :

  • dumpsys fournit des informations sur l'état des services système d'un appareil.
  • Le traçage système produit un fichier de trace permettant de générer un rapport système.
  • L'inspecteur de tâches en arrière-plan d'Android Studio vous aide à surveiller les wake locks, y compris ceux qui peuvent être acquis par des bibliothèques telles que WorkManager.

dumpsys

dumpsys est un outil qui s'exécute sur les appareils Android et fournit des informations sur les services système de l'appareil.

La commande suivante est particulièrement utile pour déboguer les verrous de réveil :

  • adb shell dumpsys batterystats fournit un historique détaillé des verrous de réveil détenus par chaque application. Pour en savoir plus, consultez la documentation dumpsys Inspecter les diagnostics de la batterie.

Traçage système

Le traçage système enregistre un large éventail d'activités de l'appareil sur une courte période. Le traçage système produit un fichier de trace permettant de générer un rapport système. Ce rapport vous aide à identifier des moyens d'améliorer les performances de votre application.

Pour savoir comment vous lancer, consultez ce guide de démarrage rapide sur le traçage système. Vous pouvez également regarder cette vidéo sur l'amélioration de l'efficacité de la batterie Android.

Background Task Inspector

Vous pouvez utiliser l'inspecteur de tâches en arrière-plan d'Android Studio pour surveiller les verrous de réveil, les alarmes et les jobs.

En particulier, la bibliothèque WorkManager utilise JobScheduler pour planifier et exécuter des tâches. Pendant l'exécution de ces tâches, elles maintiennent un verrouillage de réveil attribué à l'application. Vous pouvez utiliser l'outil d'inspection des tâches en arrière-plan pour surveiller les nœuds de calcul et les tâches qui s'exécutent en arrière-plan, et afficher des informations détaillées sur leur fonctionnement.