Tradefed 中的设备状态

Android 设备

Tradefed 中的 Android 设备可以经历多种状态,这些状态通过设备管理器提供。Android 设备的状态主要分为两类:分配状态和在线状态。

所有这些状态都可以在 Tradefed 控制台 中使用 l dlist 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:设备已连接,但未准备好运行测试。它通常在 adb 中显示为 offline
  • ALLOCATED:设备当前正在运行测试,无法被选中。
  • CHECKING_AVAILABILITY:设备刚刚连接,TF 检查它是否已正确联机并且可以可用。如果不是,它将被设为不可用。

在线状态

在线状态表示 adb devices 所见的设备的实际状态。它们由 TestDeviceState 描述,可以是:

  • FASTBOOT
  • ONLINE
  • RECOVERY
  • NOT_AVAILABLE

Tradefed 在线状态链接到我们使用的底层 adbddmlib。它使用 DeviceState 描述状态。