Background Task Inspector を使用して WorkManager ワーカーをデバッグする

Android Studio Arctic Fox 以降では、WorkManager ライブラリ 2.5.0 以降を使用している場合に、Background Task Inspector によってアプリのバックグラウンド ワーカーを可視化、モニタリング、デバッグできます。

スタートガイド

Background Task Inspector でワーカーを一覧表示するには、次の手順を行います。

  1. API レベル 26 以降を搭載したエミュレータまたは接続デバイスでアプリを実行します。

  2. メニューバーから [View] > [Tool Windows] > [App Inspection] を選択します。

  3. [Background Task Inspector] タブを選択します。

  4. プルダウン メニューから、実行中のアプリプロセスを選択します。

  5. [Background Task Inspector] ペインに、現在実行中のアプリのワーカーが表示されます。詳細を調べるワーカーをクリックします。

ワーカーを表示して検査する

API レベル 26 以降を搭載したデバイスで WorkManager 2.5.0 以降を使用してアプリをデプロイすると、[Background Task Inspector] タブにアクティブなワーカーが表示されます。以下に示すように、[Background Task Inspector] には、すべてのジョブのクラス名、現在の状態、開始時間、再試行(実行中、失敗、完了のいずれの状態であるかを問いません)が表示されます。

作業の詳細

リストで特定のジョブをクリックすると、[Work Details] パネルが開き、ワーカーの詳細情報が表示されます。

選択したワーカーの詳細のスクリーンショット。
図 1. 作業の詳細。
  • Description: このセクションには、ワーカークラス名と完全修飾パッケージが一覧表示され、このワーカーに割り当てられたタグと UUID も示されます。
  • Execution: このセクションには、ワーカーの制約(存在する場合)、実行頻度、その状態、このワーカーが作成されてキューに入れられたクラスが表示されます。
  • WorkContinuation: このセクションには、このワーカーが存在する作業チェーン内の場所が表示されます。作業チェーン内の別のワーカーの詳細を確認するには、UUID をクリックします。
  • Results: このセクションには、選択したワーカーの開始時間、再試行回数、出力データが表示されます。

ワーカーをキャンセルする

現在実行中またはキューに入れられているワーカーを停止するには、ワーカーを選択して、ツールバーの [Cancel Selected Worker] をクリックします。

グラフビューを表示する

ワーカーは連結できるため、ワーカーの依存関係をグラフとして視覚化することが有用な場合があります。ワーカー チェーンを視覚的に表示するには、テーブルからワーカーを選択し、ツールバーの [Show Graph View] をクリックします。ワーカーのみがグラフに描画されます。

グラフビューのスクリーンショット。
図 2. グラフビュー。

このグラフを使用すると、ワーカー間の関係をすばやく確認し、複雑なチェーン関係での進捗状況をモニタリングできます。

リスト表示に戻るには、[Show List View] をクリックします。

ジョブ、アラーム、ウェイクロックを表示して検査する

Background Task Inspector では、アプリのジョブ、アラーム、ウェイクロックを検査することもできます。各タイプの非同期タスクが [Inspector] タブの該当する見出しに表示されるようになり、タスクのステータスと進行状況を簡単にモニタリングできるようになりました。ワーカーと同様に、ジョブ、アラーム、またはウェイクロックを選択して [Task Details] パネルで詳細情報を調べることができます。

ワーカー、ジョブ、アラーム、またはウェイクロックの詳細情報を表示するには、右側の [Task Details] パネルで選択します。

Background Task Inspector ウィンドウのスクリーンショット。
図 3. Background Task Inspector ウィンドウ。

参考情報

Background Task Inspector の詳細については、次の参考情報をご覧ください。

ドキュメント

Codelab

ブログ投稿