Tradefed でのデバイスの状態

Android デバイス

Tradefed では、Android デバイスに複数の状態が存在します。これらの状態はデバイス マネージャーによってトラッキングされます。Android デバイスの状態には、主に割り当て状態とオンライン状態の 2 つのカテゴリがあります。

この 2 つの状態は、Tradefed コンソールl d または list devices を使用することで確認できます。

tf >l d
    Serial        State         Allocation   Product   Variant   Build    Battery
    84TX0081B     ONLINE        Available    blueline  blueline  MASTER   100
    HT6550300002  ONLINE        Available    sailfish  sailfish  MASTER   94
    876X00GNG     UNAUTHORIZED  Unavailable  unknown   unknown   unknown  unknown
    HT6570300047  UNAUTHORIZED  Unavailable  unknown   unknown   unknown  unknown
    

割り当て状態

割り当ての状態は、デバイスの使用状況を管理する Tradefed 固有の状態です。DeviceAllocationState によって記述され、次のいずれかになります。

  • UNKNOWN: デバイスをトラッキング リストから削除するかを決定するために使用する、移行中の中間状態です。デバイスが adb と未接続の場合にこの状態になります。
  • IGNORED: 除外されたデバイスであるため、TF セッションに対して選択できません。TF はエクスポートされた ANDROID_SERIAL で開始された可能性が高く、選択できるデバイスが制限されています。
  • AVAILABLE: テストの対象として選択できる状態です。
  • UNAVAILABLE: デバイスは接続されていますが、テストを実行する準備ができていません。通常、adboffline として表示されます。
  • ALLOCATED: テストの実行中であるため、このデバイスは選択できません。
  • CHECKING_AVAILABILITY: デバイスが接続された直後の状態です。デバイスがオンライン状態であり、正常に動作できるかを TF が確認しています。正常に動作しない場合は使用できなくなります。

オンラインの状態

オンラインの状態は adb devices が示すデバイスの実際の状態を表します。TestDeviceState によって記述され、以下のいずれかの状態になります。

  • FASTBOOT
  • ONLINE
  • RECOVERY
  • NOT_AVAILABLE

Tradefed のオンラインの状態は Google が使用する基礎の adb ライブラリ ddmlib にリンクしています。このライブラリは、DeviceState を使用して状態を記述します。