Esistono diversi strumenti che puoi utilizzare per eseguire il debug di un'app in esecuzione in locale che utilizza wake lock. Questi strumenti possono aiutarti a identificare e risolvere i problemi di prestazioni.
I seguenti strumenti possono aiutarti a eseguire il debug o l'ottimizzazione dei wake lock:
- dumpsys fornisce informazioni sullo stato dei servizi di sistema su un dispositivo.
- La tracciatura del sistema produce un file di traccia che puoi utilizzare per generare un report di sistema.
- Background Task Inspector di Android Studio ti aiuta a monitorare i wake lock, inclusi quelli che potrebbero essere acquisiti da librerie come WorkManager.
dumpsys
dumpsys è uno strumento che viene eseguito sui dispositivi Android e fornisce informazioni sui servizi di sistema del dispositivo.
Il seguente comando è particolarmente utile per il debug dei wake lock:
adb shell dumpsys batterystats
fornisce una cronologia dettagliata dei wake lock mantenuti da ogni app. Per ulteriori informazioni, consulta la documentazione di dumpsys Inspect battery diagnostics.
Tracciamento del sistema
La traccia di sistema registra un'ampia gamma di attività del dispositivo in un breve periodo. La traccia di sistema produce un file di traccia che puoi utilizzare per generare un report di sistema. Questo report ti aiuta a identificare i modi per migliorare il rendimento della tua app.
Per informazioni su come iniziare, consulta questa guida rapida alla tracciatura del sistema. Puoi anche guardare questo video su come migliorare l'efficienza della batteria di Android.
Background Task Inspector
Puoi utilizzare lo strumento di controllo delle attività in background di Android Studio per monitorare wake lock, allarmi e job.
In particolare, la libreria WorkManager utilizza JobScheduler per pianificare ed eseguire i job. Mentre questi job sono in esecuzione, mantengono un wake lock attribuito all'app. Puoi utilizzare Background Task Inspector per monitorare i worker e i job che vengono eseguiti in background e visualizzare i dettagli del loro lavoro.