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 “輪詢響應”命令的最大操作時間(以毫秒為單位) |
領域 | |
---|---|
protected static final String | PERM_DENIED_ERROR_PATTERN
|
公共構造函數 | |
---|---|
NativeDeviceStateMonitor ( IDeviceManager mgr, IDevice device, boolean fastbootEnabled) |
公共方法 | |
---|---|
TestDeviceState | getDeviceState () 獲取設備狀態。 |
String | getFastbootSerialNumber () 獲取 fastboot 模式序列號。 |
String | getMountPoint (String mountName) 返回掛載點。 |
String | getSerialNumber () 獲取設備的序列號。 |
boolean | isAdbTcp () |
void | setDefaultAvailableTimeout (long timeoutMs) 在 |
void | setDefaultOnlineTimeout (long timeoutMs) 在 |
void | setFastbootSerialNumber (String serial) 設置fastboot模式序列號。 |
void | setIDevice (IDevice newDevice) 更新當前 IDevice。 |
void | setState ( TestDeviceState deviceState) 設置設備當前狀態。 |
boolean | waitForBootComplete (long waitTime) 阻塞直到設置設備的啟動完成標誌 |
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 shell 命令。 |
受保護的方法 | |
---|---|
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
常數值:10000 (0x0000000000002710)
MAX_OP_TIME
protected static final int MAX_OP_TIME
“輪詢響應”命令的最大操作時間(以毫秒為單位)
常數值:10000 (0x00002710)
領域
PERM_DENIED_ERROR_PATTERN
protected static final String PERM_DENIED_ERROR_PATTERN
公共構造函數
NativeDeviceStateMonitor
public NativeDeviceStateMonitor (IDeviceManager mgr, IDevice device, boolean fastbootEnabled)
參數 | |
---|---|
mgr | IDeviceManager |
device | IDevice |
fastbootEnabled | boolean |
公共方法
getFastbootSerialNumber
public String getFastbootSerialNumber ()
獲取 fastboot 模式序列號。
退貨 | |
---|---|
String |
獲取掛載點
public String getMountPoint (String mountName)
返回掛載點。
如果IDevice
中的緩存信息不可用,則直接查詢設備。
TODO:將此行為移至IDevice#getMountPoint(String)
參數 | |
---|---|
mountName | String : 掛載點的名稱 |
退貨 | |
---|---|
String | 掛載點或null |
投擲 | |
---|---|
DeviceNotAvailableException |
獲取序列號
public String getSerialNumber ()
獲取設備的序列號。
退貨 | |
---|---|
String |
isAdbTcp
public boolean isAdbTcp ()
退貨 | |
---|---|
boolean |
設置默認可用超時
public void setDefaultAvailableTimeout (long timeoutMs)
在waitForDeviceAvailable()
中設置等待設備可用的時間(以毫秒為單位)。
參數 | |
---|---|
timeoutMs | long |
設置默認在線超時
public void setDefaultOnlineTimeout (long timeoutMs)
在waitForDeviceOnline()
中設置等待設備在線的時間(以毫秒為單位)。
參數 | |
---|---|
timeoutMs | long |
setFastbootSerialNumber
public void setFastbootSerialNumber (String serial)
設置fastboot模式序列號。
參數 | |
---|---|
serial | String |
設置設備
public void setIDevice (IDevice newDevice)
更新當前 IDevice。
等待啟動完成
public boolean waitForBootComplete (long waitTime)
阻塞直到設置設備的啟動完成標誌
參數 | |
---|---|
waitTime | long :等待的毫秒數 |
退貨 | |
---|---|
boolean |
等待設備可用
public IDevice waitForDeviceAvailable (long waitTime)
等待設備響應並可用於測試。目前這意味著包管理器和外部存儲可用。
參數 | |
---|---|
waitTime | long : 以毫秒為單位的等待時間 |
退貨 | |
---|---|
IDevice | 如果設備在時間到期之前上線,則為IDevice 。 null 為空。 |
等待設備可用
public IDevice waitForDeviceAvailable ()
等待設備響應並可用於測試。
等同於waitForDeviceAvailable(long)
,但使用默認設備啟動超時。退貨 | |
---|---|
IDevice | 如果設備在時間到期之前上線,則為IDevice 。 null 為空。 |
waitForDeviceAvailableInRecoverPath
public IDevice waitForDeviceAvailableInRecoverPath (long waitTime)
在恢復路徑期間調用waitForDeviceAvailable(long)
的特殊變體以定制處理。
參數 | |
---|---|
waitTime | long |
退貨 | |
---|---|
IDevice |
投擲 | |
---|---|
DeviceNotAvailableException |
等待設備引導程序
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 | 如果設備在時間到期前處於 fastbootd, true |
等待設備恢復
public IDevice waitForDeviceInRecovery ()
使用標準啟動超時等待設備進入恢復模式。
退貨 | |
---|---|
IDevice | 如果設備在時間到期之前恢復,則IDevice 。 null 為空。 |
等待設備恢復
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。 |
等待設備不可用
public boolean waitForDeviceNotAvailable (long waitTime)
等待設備不可用
參數 | |
---|---|
waitTime | long :等待的最長時間(以毫秒為單位) |
退貨 | |
---|---|
boolean | 如果設備不可用true |
等待設備在線
public IDevice waitForDeviceOnline ()
使用標準啟動超時等待設備聯機。
注意:一旦設備通過 DDMS 可見,此方法將返回。它不保證設備實際上響應 adb 命令 - 請改用waitForDeviceAvailable()
。退貨 | |
---|---|
IDevice | 如果設備在時間到期之前上線,則為IDevice 。 null 為空。 |
等待設備在線
public IDevice waitForDeviceOnline (long waitTime)
等待設備在線。
注意:一旦設備通過 DDMS 可見,此方法將返回。它不保證設備實際上響應 adb 命令 - 請改用waitForDeviceAvailable()
。參數 | |
---|---|
waitTime | long :等待的最長時間(以毫秒為單位) |
退貨 | |
---|---|
IDevice | 如果設備在時間到期之前上線,則為IDevice 。 null 為空。 |
等待設備外殼
public boolean waitForDeviceShell (long waitTime)
等待設備響應基本的 adb shell 命令。
參數 | |
---|---|
waitTime | long :以毫秒為單位的等待時間 |
退貨 | |
---|---|
boolean | 如果設備在waitTime過去之前開始響應, true 。 |
受保護的方法
創建輸出接收器
protected CollectingOutputReceiver createOutputReceiver ()
暴露測試
退貨 | |
---|---|
CollectingOutputReceiver | CollectingOutputReceiver |
getCheckPollTime
protected long getCheckPollTime ()
暴露測試
退貨 | |
---|---|
long |
獲取當前時間
protected long getCurrentTime ()
暴露測試
退貨 | |
---|---|
long |
郵寄在線檢查
protected boolean postOnlineCheck (long waitTime)
在在線設備上進行的額外檢查
參數 | |
---|---|
waitTime | long :放棄前等待的時間(以毫秒為單位) |
退貨 | |
---|---|
boolean | 如果在 waitTime 到期之前檢查成功,則為true 。否則為false |
投擲 | |
---|---|
| com.android.tradefed.device.DeviceNotAvailableException |
DeviceNotAvailableException |
等待StoreMount
protected boolean waitForStoreMount (long waitTime)
等待安裝設備的外部存儲。
參數 | |
---|---|
waitTime | long :放棄前等待的時間(以毫秒為單位) |
退貨 | |
---|---|
boolean | 如果在 waitTime 到期之前安裝了外部存儲,則為true 。否則為false |
投擲 | |
---|---|
DeviceNotAvailableException |