Déboguer les wakelocks en local
Restez organisé à l'aide des collections
Enregistrez et classez les contenus selon vos préférences.
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'outil d'inspection des 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 détiennent 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 travail.
Le contenu et les exemples de code de cette page sont soumis aux licences décrites dans la Licence de contenu. Java et OpenJDK sont des marques ou des marques déposées d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2025/08/27 (UTC).
[[["Facile à comprendre","easyToUnderstand","thumb-up"],["J'ai pu résoudre mon problème","solvedMyProblem","thumb-up"],["Autre","otherUp","thumb-up"]],[["Il n'y a pas l'information dont j'ai besoin","missingTheInformationINeed","thumb-down"],["Trop compliqué/Trop d'étapes","tooComplicatedTooManySteps","thumb-down"],["Obsolète","outOfDate","thumb-down"],["Problème de traduction","translationIssue","thumb-down"],["Mauvais exemple/Erreur de code","samplesCodeIssue","thumb-down"],["Autre","otherDown","thumb-down"]],["Dernière mise à jour le 2025/08/27 (UTC)."],[],[],null,["There are a number of tools you can use to debug a locally-running app that uses\nwake locks. These tools can help you identify and fix performance issues.\n| **Note:** [Some APIs acquire wake locks that are attributed to your app](/develop/background-work/background-tasks/awake#actions-keep). This means your app might be using wake locks even though you aren't writing that code explicitly. If your app has mysterious performance issues, it can be helpful to check if there are misbehaving wake locks. If your app is holding wake locks and you don't recognize the names, [Identify wake locks created by other APIs](/develop/background-work/background-tasks/awake/wakelock/identify-wls) can help you identify the API that might have created them.\n\nThe following tools can help you debug or optimize your wake locks:\n\n- [dumpsys](#dumpsys) provides information about the status of system services on a device.\n- [System tracing](#system-tracing) produces a trace file that you can use to generate a system report.\n- The Android Studio [Background Task Inspector](#bg-task) helps you to monitor wake locks, including wake locks that might be acquired by libraries like WorkManager.\n\ndumpsys\n\n[dumpsys](/tools/dumpsys) is a tool that runs on Android devices and provides\ninformation about the device's system services.\n\nThe following command is particularly useful for debugging wake locks:\n\n- `adb shell dumpsys batterystats` provides a detailed history of wake locks held by each app. For more information, see the dumpsys [Inspect battery\n diagnostics](/tools/dumpsys#battery) documentation.\n\nSystem tracing\n\n[System tracing](/topic/performance/tracing) records a wide range of device activity\nover a short period. System tracing produces a *trace file* that you can use to\ngenerate a system report. This report helps you identify ways to improve your\napp's performance.\n\nFor information on how to get started, see this [system tracing quickstart\nguide](https://perfetto.dev/docs/quickstart/android-tracing). You can also watch [this video on improving\nAndroid battery efficiency](https://youtu.be/jS46zP8kQ3k?si=BCteWawO-rK7EAGl).\n\nBackground Task Inspector\n\nYou can use Android Studio's\n[Background Task Inspector](/studio/inspect/task) to monitor [wake locks,\nalarms and jobs](/studio/inspect/task#inspect-jobs-alarms-wakelocks).\n\nIn particular, the WorkManager library uses JobScheduler to schedule and execute\njobs. While these jobs are running, they hold a wake lock that is attributed\nto the app. You can use Background Task Inspector to monitor workers and jobs\nthat execute in the background and see details about their work."]]