Android 设备
Tradefed 中的 Android 设备可以经历通过设备管理器提供的几种状态。Android 设备有两大类状态:分配状态和在线状态。
您可以使用 l d
或 list devices
在 Tradefed 控制台中检查所有这些状态。
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
- 线上
- RECOVERY
- NOT_AVAILABLE
Tradefed 在线状态关联到我们使用的底层 adb
库,即 ddmlib
。该库使用 DeviceState 来描述状态。