IDeviceStateMonitor
public
interface
IDeviceStateMonitor
com.android.tradefed.device.IDeviceStateMonitor |
提供用於監控 IDevice
狀態的設備。
系統目前認定裝置「可用」只有在四個事件為 true 時:
1.裝置可透過 DDMS/ADB 連上網路 (waitForDeviceOnline()
)
2.裝置已設定 dev.bootcomplete 標記 (@link #waitForBootComplete(long)}
3.裝置的套件管理員回應速度 (可能無法運作)
4.已掛接裝置的外部儲存空間
3.&4. 加入 waitForDeviceAvailable()
。
摘要
公用方法 | |
---|---|
default
void
|
attachFinalState(TestDeviceState finalState)
如果達到此狀態,請將最終狀態附加至 abort waitForDeviceState。 |
abstract
TestDeviceState
|
getDeviceState()
取得裝置狀態。 |
abstract
String
|
getFastbootSerialNumber()
取得 Fastboot 模式序號。 |
abstract
String
|
getMountPoint(String mountName)
傳回掛接點。 |
abstract
String
|
getSerialNumber()
取得裝置的序號。 |
abstract
boolean
|
isAdbTcp()
|
abstract
void
|
setDefaultAvailableTimeout(long timeoutMs)
設定要透過「 |
abstract
void
|
setDefaultOnlineTimeout(long timeoutMs)
設定裝置在「 |
abstract
void
|
setFastbootSerialNumber(String serial)
設定 Fastboot 模式序號。 |
abstract
void
|
setIDevice(IDevice device)
更新目前的 IDevice。 |
abstract
void
|
setState(TestDeviceState deviceState)
設定裝置目前的狀態。 |
abstract
boolean
|
waitForBootComplete(long waitTime)
在裝置啟動完成標記設定前封鎖 |
abstract
IDevice
|
waitForDeviceAvailable(long waitTime)
等待裝置回應且可供測試。 |
abstract
IDevice
|
waitForDeviceAvailable()
等待裝置回應且可供測試。 |
default
IDevice
|
waitForDeviceAvailableInRecoverPath(long waitTime)
會在下列位置的復原路徑呼叫 |
abstract
boolean
|
waitForDeviceBootloader(long waitTime)
等待裝置進入系統啟動載入程式。 |
abstract
void
|
waitForDeviceBootloaderStateUpdate()
等待裝置的系統啟動載入程式狀態更新 |
abstract
boolean
|
waitForDeviceFastbootd(String fastbootPath, long waitTime)
等待裝置快速啟動。 |
abstract
IDevice
|
waitForDeviceInRecovery()
等待裝置透過標準啟動逾時狀態進入復原模式。 |
abstract
boolean
|
waitForDeviceInRecovery(long waitTime)
等待裝置進入「ADB 復原」狀態州 |
abstract
boolean
|
waitForDeviceInSideload(long waitTime)
等待裝置出現在「ADB 側載」州 |
abstract
boolean
|
waitForDeviceNotAvailable(long waitTime)
等待裝置無法使用 |
abstract
IDevice
|
waitForDeviceOnline()
使用標準開機逾時,等待裝置連上網路。 |
abstract
IDevice
|
waitForDeviceOnline(long time)
等待裝置連上網路。 |
abstract
boolean
|
waitForDeviceShell(long waitTime)
等待裝置回應基本 ADB 殼層指令。 |
公用方法
連結最終狀態
public void attachFinalState (TestDeviceState finalState)
如果達到此狀態,請將最終狀態附加至 abort waitForDeviceState。
參數 | |
---|---|
finalState |
TestDeviceState |
getDeviceState
public abstract TestDeviceState getDeviceState ()
取得裝置狀態。
傳回 | |
---|---|
TestDeviceState |
裝置的TestDeviceState |
getFastbootSerialNumber
public abstract String getFastbootSerialNumber ()
取得 Fastboot 模式序號。
傳回 | |
---|---|
String |
getMountPoint
public abstract String getMountPoint (String mountName)
傳回掛接點。
如果沒有可用的 IDevice
中的快取資訊,則直接查詢裝置。
待辦事項:將此行為移至 IDevice#getMountPoint(String)
參數 | |
---|---|
mountName |
String :掛接點名稱 |
傳回 | |
---|---|
String |
掛接點,也就是 null |
擲回 | |
---|---|
DeviceNotAvailableException |
getSerialNumber
public abstract String getSerialNumber ()
取得裝置的序號。
傳回 | |
---|---|
String |
isAdbTcp
public abstract boolean isAdbTcp ()
傳回 | |
---|---|
boolean |
如果裝置已透過 tcp 連線至 ADB,則為 true |
setDefaultAvailableTimeout
public abstract void setDefaultAvailableTimeout (long timeoutMs)
設定要透過「waitForDeviceAvailable()
」取得裝置所需的時間 (毫秒)。
參數 | |
---|---|
timeoutMs |
long |
setDefaultOnlineTimeout
public abstract void setDefaultOnlineTimeout (long timeoutMs)
設定裝置在「waitForDeviceOnline()
」連上網路所需的時間 (毫秒)。
參數 | |
---|---|
timeoutMs |
long |
setFastbootSerialNumber
public abstract void setFastbootSerialNumber (String serial)
設定 Fastboot 模式序號。
參數 | |
---|---|
serial |
String |
setIDevice
public abstract void setIDevice (IDevice device)
更新目前的 IDevice。
waitForBootComplete
public abstract boolean waitForBootComplete (long waitTime)
在裝置啟動完成標記設定前封鎖
參數 | |
---|---|
waitTime |
long :等待時間 (毫秒) |
傳回 | |
---|---|
boolean |
waitForDeviceAvailable
public abstract IDevice waitForDeviceAvailable (long waitTime)
等待裝置回應且可供測試。這表示 可以使用套件管理員和外部儲存空間
參數 | |
---|---|
waitTime |
long :等待時間 (毫秒) |
傳回 | |
---|---|
IDevice |
如果裝置在時間到期前連上網路,則IDevice 。null
反之。 |
waitForDeviceAvailable
public abstract IDevice waitForDeviceAvailable ()
等待裝置回應且可供測試。
與 waitForDeviceAvailable(long)
相同,但使用預設裝置
啟動逾時。
傳回 | |
---|---|
IDevice |
如果裝置在時間到期前連上網路,則IDevice 。null
反之。 |
waitForDeviceAvailableInRecoveryPath
public IDevice waitForDeviceAvailableInRecoverPath (long waitTime)
會在下列位置的復原路徑呼叫 waitForDeviceAvailable(long)
的特殊變體:
調整處理方式
參數 | |
---|---|
waitTime |
long |
傳回 | |
---|---|
IDevice |
擲回 | |
---|---|
DeviceNotAvailableException |
裝置無法使用時觸發。 |
waitForDeviceBootloader
public abstract boolean waitForDeviceBootloader (long waitTime)
等待裝置進入系統啟動載入程式。
參數 | |
---|---|
waitTime |
long :等待時間上限 (毫秒) |
傳回 | |
---|---|
boolean |
如果裝置在時間到期前已啟動系統啟動載入程式,請true |
waitForDeviceBootloaderStateUpdate
public abstract void waitForDeviceBootloaderStateUpdate ()
等待裝置的系統啟動載入程式狀態更新
waitForDeviceFastbootd
public abstract boolean waitForDeviceFastbootd (String fastbootPath, long waitTime)
等待裝置快速啟動。
參數 | |
---|---|
fastbootPath |
String :Fastboot 二進位檔的路徑。 |
waitTime |
long :等待時間上限 (毫秒) |
傳回 | |
---|---|
boolean |
如果裝置在時間到期前快速啟動,則為 true |
waitForDeviceInRecovery
public abstract IDevice waitForDeviceInRecovery ()
等待裝置透過標準啟動逾時狀態進入復原模式。
傳回 | |
---|---|
IDevice |
如果裝置在時間到期前復原,則IDevice 。null
反之。 |
waitForDeviceInRecovery
public abstract boolean waitForDeviceInRecovery (long waitTime)
等待裝置進入「ADB 復原」狀態州
參數 | |
---|---|
waitTime |
long :等待時間上限 (毫秒) |
傳回 | |
---|---|
boolean |
如果裝置在逾時前處於復原狀態,則為「true」,否則為「False」。 |
waitForDeviceInSideload
public abstract boolean waitForDeviceInSideload (long waitTime)
等待裝置出現在「ADB 側載」州
參數 | |
---|---|
waitTime |
long :等待時間上限 (毫秒) |
傳回 | |
---|---|
boolean |
如果裝置在逾時前側載,則為「true」,否則傳回「False」。 |
waitForDeviceNotAvailable
public abstract boolean waitForDeviceNotAvailable (long waitTime)
等待裝置無法使用
參數 | |
---|---|
waitTime |
long :等待時間上限 (毫秒) |
傳回 | |
---|---|
boolean |
如果裝置缺貨時true |
waitForDeviceOnline
public abstract IDevice waitForDeviceOnline ()
使用標準開機逾時,等待裝置連上網路。
注意:當裝置可透過 DDMS 觀看時,這個方法就會傳回結果。無法保證
裝置對 ADB 指令的實際回應 - 請使用 waitForDeviceAvailable()
。
傳回 | |
---|---|
IDevice |
如果裝置在時間到期前連上網路,則IDevice 。null
反之。 |
waitForDeviceOnline
public abstract IDevice waitForDeviceOnline (long time)
等待裝置連上網路。
注意:當裝置可透過 DDMS 觀看時,這個方法就會傳回結果。無法保證
裝置對 ADB 指令的實際回應 - 請使用 waitForDeviceAvailable()
。
參數 | |
---|---|
time |
long :等待時間上限 (毫秒) |
傳回 | |
---|---|
IDevice |
如果裝置在時間到期前連上網路,則IDevice 。null
反之。 |
waitForDeviceShell
public abstract boolean waitForDeviceShell (long waitTime)
等待裝置回應基本 ADB 殼層指令。
參數 | |
---|---|
waitTime |
long :等待時間 (毫秒) |
傳回 | |
---|---|
boolean |
如果裝置在 waitTime 前回應,則為 true 。 |