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 ウィンドウのスクリーンショット。
図 1. Background Task Inspector ウィンドウ。

Background Task Inspector には、クラス名、現在の状態、開始時間、再試行、すべてのジョブの出力データ(実行中、失敗、完了のいずれの状態であるかを問いません)が表示されます。

作業の詳細

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

選択したワーカーの詳細のスクリーンショット。
図 2. 作業の詳細。

説明

[Description] セクションには、ワーカークラス名と完全修飾パッケージが一覧表示され、このワーカーに割り当てられたタグと UUID も示されます。

実行

[Execution] セクションには、ワーカーの制約(存在する場合)、実行頻度、その状態、このワーカーが作成されてキューに入れられたクラスが表示されます。

WorkContinuation

[WorkContinuation] セクションには、このワーカーが存在する作業チェーン内の場所が表示されます。作業チェーン内の別のワーカーの詳細を確認するには、UUID をクリックします。

結果

[Results] セクションには、選択したワーカーの開始時間、再試行回数、出力データが表示されます。

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

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

グラフビューを表示する

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

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

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

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

参考情報

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

ドキュメント

Codelab

ブログ投稿