ローカルでウェイクロックをデバッグする

wake lock を使用するローカルで実行されているアプリをデバッグするために使用できるツールは数多くあります。これらのツールは、パフォーマンスの問題を特定して修正するのに役立ちます。

次のツールは、wake lock のデバッグや最適化に役立ちます。

  • dumpsys は、デバイス上のシステム サービスのステータスに関する情報を提供します。
  • システム トレースは、システム レポートの生成に使用できるトレース ファイルを生成します。
  • Android Studio の Background Task Inspector を使用すると、WorkManager などのライブラリによって取得される可能性のある wake lock を含め、wake lock をモニタリングできます。

dumpsys

dumpsys は、Android デバイス上で動作し、デバイスのシステム サービスに関する情報を提供するツールです。

次のコマンドは、wake lock のデバッグに特に役立ちます。

  • adb shell dumpsys batterystats は、各アプリが保持する wake lock の詳細な履歴を提供します。詳細については、dumpsys のバッテリー診断を検査するのドキュメントをご覧ください。

システム トレース

システム トレースは、短期間の幅広いデバイスのアクティビティを記録します。システム トレースは、システム レポートの生成に使用できるトレース ファイルを生成します。このレポートを活用することで、アプリのパフォーマンスを改善する方法を見つけることができます。

使用を開始する方法については、システム トレースのクイックスタート ガイドをご覧ください。Android のバッテリー効率の改善に関する動画もご覧ください。

Background Task Inspector

Android Studio の Background Task Inspector を使用して、wake lock、アラーム、ジョブをモニタリングできます。

特に、WorkManager ライブラリは JobScheduler を使用してジョブのスケジュール設定と実行を行います。これらのジョブは、実行中にアプリに起因する wake lock を保持します。Background Task Inspector を使用すると、バックグラウンドで実行されるワーカーとジョブをモニタリングし、その処理の詳細を確認できます。