NativeDeviceStateMonitor
public
class
NativeDeviceStateMonitor
extends Object
implements
IDeviceStateMonitor
| java.lang.Object | |
| ↳ | com.android.tradefed.device.NativeDeviceStateMonitor |
用於監控 IDevice 狀態的輔助程式類別,不支援架構。
摘要
常數 | |
|---|---|
long |
MAX_CHECK_POLL_TIME
|
int |
MAX_OP_TIME
「輪詢回應」指令的作業時間上限 (毫秒) |
String |
PERM_DENIED_ERROR_PATTERN
|
公用建構函式 | |
|---|---|
NativeDeviceStateMonitor(IDeviceManager mgr, IDevice device, boolean fastbootEnabled)
|
|
公用方法 | |
|---|---|
void
|
attachFinalState(TestDeviceState finalState)
如果達到最終狀態,請附加最終狀態來中止 waitForDeviceState。 |
void
|
clearTcpFastbootMonitor()
清除裝置管理工具中的任何狀態。 |
TestDeviceState
|
getDeviceState()
取得裝置狀態。 |
String
|
getFastbootSerialNumber()
Gets the fastboot mode serial number. |
String
|
getMountPoint(String mountName)
傳回掛接點。 |
String
|
getSerialNumber()
取得裝置的序號。 |
boolean
|
isAdbTcp()
|
void
|
setDefaultAvailableTimeout(long timeoutMs)
設定等待裝置在 |
void
|
setDefaultOnlineTimeout(long timeoutMs)
設定等待裝置在 |
void
|
setFastbootSerialNumber(String serial)
設定快速啟動模式序號。 |
void
|
setIDevice(IDevice newDevice)
更新目前的 IDevice。 |
void
|
setSkipBootComplete(boolean skipBootComplete)
|
void
|
setState(TestDeviceState deviceState)
設定裝置目前狀態。 |
boolean
|
waitForBootComplete(long waitTime)
Blocks until the device's boot complete flag is set |
IDevice
|
waitForDeviceAvailable(long waitTime)
等待裝置回應並可供測試。 |
IDevice
|
waitForDeviceAvailable()
等待裝置回應並可供測試。 |
IDevice
|
waitForDeviceAvailableInRecoverPath(long waitTime)
在復原路徑中呼叫的 |
boolean
|
waitForDeviceBootloader(long time)
等待裝置進入開機載入程式。 |
void
|
waitForDeviceBootloaderStateUpdate()
等待裝置啟動載入程式狀態重新整理 |
boolean
|
waitForDeviceFastbootd(String fastbootPath, long time)
等待裝置進入 fastbootd。 |
IDevice
|
waitForDeviceInRecovery()
使用標準啟動逾時,等待裝置進入復原模式。 |
boolean
|
waitForDeviceInRecovery(long waitTime)
等待裝置進入「adb recovery」狀態 |
boolean
|
waitForDeviceInSideload(long waitTime)
等待裝置進入「adb sideload」狀態 |
boolean
|
waitForDeviceNotAvailable(long waitTime)
等待裝置無法使用 |
IDevice
|
waitForDeviceOnline()
使用標準啟動逾時時間,等待裝置上線。 |
IDevice
|
waitForDeviceOnline(long waitTime)
等待裝置連上網路。 |
boolean
|
waitForDeviceShell(long waitTime)
等待裝置回應基本 adb 殼層指令。 |
受保護的方法 | |
|---|---|
CollectingOutputReceiver
|
createOutputReceiver()
公開測試 |
long
|
getCheckPollTime()
公開測試 |
long
|
getCurrentTime()
公開測試 |
IDevice
|
getIDevice()
|
boolean
|
postOnlineCheck(long waitTime)
在連線裝置上進行額外檢查 |
boolean
|
waitForStoreMount(long waitTime)
等待裝置的外接儲存空間完成掛接。 |
常數
MAX_CHECK_POLL_TIME
protected static final long MAX_CHECK_POLL_TIME
常數值: 3000 (0x0000000000000bb8)
MAX_OP_TIME
protected static final int MAX_OP_TIME
「輪詢回應」指令的作業時間上限 (毫秒)
常數值: 10000 (0x00002710)
PERM_DENIED_ERROR_PATTERN
protected static final String PERM_DENIED_ERROR_PATTERN
常數值: 「Permission denied」(權限遭拒)
公用建構函式
NativeDeviceStateMonitor
public NativeDeviceStateMonitor (IDeviceManager mgr, IDevice device, boolean fastbootEnabled)
| 參數 | |
|---|---|
mgr |
IDeviceManager |
device |
IDevice |
fastbootEnabled |
boolean |
公用方法
attachFinalState
public void attachFinalState (TestDeviceState finalState)
如果達到最終狀態,請附加最終狀態來中止 waitForDeviceState。
| 參數 | |
|---|---|
finalState |
TestDeviceState |
clearTcpFastbootMonitor
public void clearTcpFastbootMonitor ()
清除裝置管理工具中的任何狀態。
getDeviceState
public TestDeviceState getDeviceState ()
取得裝置狀態。
| 傳回 | |
|---|---|
TestDeviceState |
裝置的TestDeviceState |
getFastbootSerialNumber
public String getFastbootSerialNumber ()
取得快速啟動模式序號。
| 傳回 | |
|---|---|
String |
|
getMountPoint
public String getMountPoint (String mountName)
傳回掛接點。
如果 IDevice 中沒有快取資訊,則直接查詢裝置。
待辦事項:將這項行為移至 IDevice.getMountPoint(String)
| 參數 | |
|---|---|
mountName |
String:掛接點名稱 |
| 傳回 | |
|---|---|
String |
掛接點或 null |
| 擲回 | |
|---|---|
DeviceNotAvailableException |
|
getSerialNumber
public String getSerialNumber ()
取得裝置的序號。
| 傳回 | |
|---|---|
String |
|
isAdbTcp
public boolean isAdbTcp ()
| 傳回 | |
|---|---|
boolean |
|
setDefaultAvailableTimeout
public void setDefaultAvailableTimeout (long timeoutMs)
以毫秒為單位設定等待時間,讓裝置在 waitForDeviceAvailable() 中可用。
| 參數 | |
|---|---|
timeoutMs |
long |
setDefaultOnlineTimeout
public void setDefaultOnlineTimeout (long timeoutMs)
設定等待裝置在 waitForDeviceOnline() 上線的時間 (以毫秒為單位)。
| 參數 | |
|---|---|
timeoutMs |
long |
setFastbootSerialNumber
public void setFastbootSerialNumber (String serial)
設定快速啟動模式序號。
| 參數 | |
|---|---|
serial |
String |
setSkipBootComplete
public void setSkipBootComplete (boolean skipBootComplete)
| 參數 | |
|---|---|
skipBootComplete |
boolean |
waitForBootComplete
public boolean waitForBootComplete (long waitTime)
封鎖,直到設定裝置的開機完成旗標
| 參數 | |
|---|---|
waitTime |
long:等待時間 (毫秒) |
| 傳回 | |
|---|---|
boolean |
|
waitForDeviceAvailable
public IDevice waitForDeviceAvailable (long waitTime)
等待裝置回應並可供測試。目前這表示套件管理員和外部儲存空間可用。
| 參數 | |
|---|---|
waitTime |
long:等待時間 (毫秒) |
| 傳回 | |
|---|---|
IDevice |
如果裝置在時間到期前連上網路,系統會傳送 IDevice。null
否則為 0。 |
waitForDeviceAvailable
public IDevice waitForDeviceAvailable ()
等待裝置回應並可供測試。
與 waitForDeviceAvailable(long) 相同,但使用預設裝置開機逾時。
| 傳回 | |
|---|---|
IDevice |
如果裝置在時間到期前連上網路,系統會傳送 IDevice。null
否則為 0。 |
waitForDeviceAvailableInRecoverPath
public IDevice waitForDeviceAvailableInRecoverPath (long waitTime)
waitForDeviceAvailable(long) 的特殊變體,會在復原路徑中呼叫,以調整處理方式。
| 參數 | |
|---|---|
waitTime |
long |
| 傳回 | |
|---|---|
IDevice |
|
| 擲回 | |
|---|---|
DeviceNotAvailableException |
|
waitForDeviceBootloader
public boolean waitForDeviceBootloader (long time)
等待裝置進入系統啟動載入程式。
| 參數 | |
|---|---|
time |
long:等待時間上限 (毫秒) |
| 傳回 | |
|---|---|
boolean |
true (如果裝置在時間到期前處於系統啟動載入程式模式) |
waitForDeviceBootloaderStateUpdate
public void waitForDeviceBootloaderStateUpdate ()
等待裝置啟動載入程式狀態重新整理
waitForDeviceFastbootd
public boolean waitForDeviceFastbootd (String fastbootPath,
long time)等待裝置進入 fastbootd。
| 參數 | |
|---|---|
fastbootPath |
String:要使用的 Fastboot 二進位檔路徑。 |
time |
long:等待時間上限 (毫秒) |
| 傳回 | |
|---|---|
boolean |
true (如果裝置在時間到期前處於 fastbootd 模式) |
waitForDeviceInRecovery
public IDevice waitForDeviceInRecovery ()
等待裝置進入復原模式,使用標準啟動逾時。
| 傳回 | |
|---|---|
IDevice |
IDevice如果裝置在時間到期前恢復原廠設定,null
否則為 0。 |
waitForDeviceInRecovery
public boolean waitForDeviceInRecovery (long waitTime)
等待裝置進入「adb recovery」狀態
| 參數 | |
|---|---|
waitTime |
long:等待時間上限 (毫秒) |
| 傳回 | |
|---|---|
boolean |
如果裝置在逾時前進入復原模式,則為 True,否則為 False。 |
waitForDeviceInSideload
public boolean waitForDeviceInSideload (long waitTime)
等待裝置進入「adb sideload」狀態
| 參數 | |
|---|---|
waitTime |
long:等待時間上限 (毫秒) |
| 傳回 | |
|---|---|
boolean |
如果裝置在逾時前處於側載狀態,則為 True,否則為 False。 |
waitForDeviceNotAvailable
public boolean waitForDeviceNotAvailable (long waitTime)
等待裝置無法使用
| 參數 | |
|---|---|
waitTime |
long:等待時間上限 (毫秒) |
| 傳回 | |
|---|---|
boolean |
true (如果裝置無法使用) |
waitForDeviceOnline
public IDevice waitForDeviceOnline ()
使用標準啟動逾時時間,等待裝置上線。
注意:裝置透過 DDMS 顯示後,這個方法就會傳回。這項功能無法保證裝置確實會回應 adb 指令,請改用 waitForDeviceAvailable()。
| 傳回 | |
|---|---|
IDevice |
如果裝置在時間到期前連上網路,系統會傳送 IDevice。null
否則為 0。 |
waitForDeviceOnline
public IDevice waitForDeviceOnline (long waitTime)
等待裝置連上網路。
注意:裝置透過 DDMS 顯示後,這個方法就會傳回。這項功能無法保證裝置確實會回應 adb 指令,請改用 waitForDeviceAvailable()。
| 參數 | |
|---|---|
waitTime |
long:等待時間上限 (毫秒) |
| 傳回 | |
|---|---|
IDevice |
如果裝置在時間到期前連上網路,系統會傳送 IDevice。null
否則為 0。 |
waitForDeviceShell
public boolean waitForDeviceShell (long waitTime)
等待裝置回應基本 adb 殼層指令。
| 參數 | |
|---|---|
waitTime |
long:等待時間 (毫秒) |
| 傳回 | |
|---|---|
boolean |
true 經過 waitTime 前裝置恢復回應。 |
受保護的方法
createOutputReceiver
protected CollectingOutputReceiver createOutputReceiver ()
可供測試
| 傳回 | |
|---|---|
CollectingOutputReceiver |
CollectingOutputReceiver |
getCheckPollTime
protected long getCheckPollTime ()
可供測試
| 傳回 | |
|---|---|
long |
|
getCurrentTime
protected long getCurrentTime ()
可供測試
| 傳回 | |
|---|---|
long |
|
postOnlineCheck
protected boolean postOnlineCheck (long waitTime)
在連線裝置上進行額外檢查
| 參數 | |
|---|---|
waitTime |
long:放棄前等待的時間 (以毫秒為單位) |
| 傳回 | |
|---|---|
boolean |
true 如果檢查在 waitTime 到期前成功通過。其他情況則為 false
|
| 擲回 | |
|---|---|
|
com.android.tradefed.device.DeviceNotAvailableException |
DeviceNotAvailableException |
|
waitForStoreMount
protected boolean waitForStoreMount (long waitTime)
等待裝置掛接外部商店。
| 參數 | |
|---|---|
waitTime |
long:放棄前等待的時間 (以毫秒為單位) |
| 傳回 | |
|---|---|
boolean |
true (如果外部商店在 waitTime 到期前掛接)。其他情況則為 false
|
| 擲回 | |
|---|---|
DeviceNotAvailableException |
|