安卓設備
Tradefed 中的 Android 裝置可以經歷透過裝置管理員提供的多種狀態。 Android 裝置的狀態主要有兩類:分配狀態和線上狀態。
所有這些狀態都可以使用ld
或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描述,可以是以下任一種:
- 未知:轉換期間使用的中間狀態,用於決定是否應從追蹤清單中刪除裝置。當設備與
adb
斷開連接時會發生這種情況。 - 已忽略:無法為 TF 會話選擇設備,因為該設備已被過濾掉。 TF 很可能是在匯出
ANDROID_SERIAL
情況下啟動的,因此它限制了可選擇的裝置範圍。 - 可用:設備已準備好可供選擇進行測試。
- 不可用:設備已連接,但尚未準備好運行測試。它通常在
adb
中顯示為offline
。 - 已指派:設備目前正在執行測試,無法選擇。
- CHECKING_AVAILABILITY:設備剛剛連接,TF 檢查它是否正確在線並且可以使用。如果沒有,它將變得不可用。
在線狀態
在線狀態代表adb devices
看到的設備的實際狀態。它們由TestDeviceState描述,可以是:
- 快速啟動
- 在線的
- 恢復
- 無法使用
Tradefed 線上狀態連結到我們使用的底層adb
庫ddmlib
。它用DeviceState來描述狀態。