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)
|
公共方法 | |
---|---|
void
|
attachFinalState(TestDeviceState finalState)
将最终状态附加到中止 waitForDeviceState(如果达到)。 |
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 旁加载”州/省/自治区/直辖市 |
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
常量值: 10,000 次 (0x0000000000002710)
最长 OP_TIME
protected static final int MAX_OP_TIME
“轮询响应”的最长操作时间(以毫秒为单位)命令
常量值: 10,000 次 (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 |
公共方法
附加 FinalState
public void attachFinalState (TestDeviceState finalState)
将最终状态附加到中止 waitForDeviceState(如果达到)。
参数 | |
---|---|
finalState |
TestDeviceState |
getDeviceState
public TestDeviceState getDeviceState ()
获取设备状态。
返回 | |
---|---|
TestDeviceState |
设备的 TestDeviceState |
getFastbootSerialNumber
public String getFastbootSerialNumber ()
获取 fastboot 模式序列号。
返回 | |
---|---|
String |
getMountPoint
public String getMountPoint (String mountName)
返回装载点。
如果 IDevice
中的缓存信息不可用,则直接查询设备。
TODO:将此行为移至 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)
设置 fastboot 模式序列号。
参数 | |
---|---|
serial |
String |
setIDevice
public void setIDevice (IDevice newDevice)
更新当前的 IDevice。
waitForBootComplete
public boolean waitForBootComplete (long waitTime)
阻止,直到设置了设备的启动完成标志
参数 | |
---|---|
waitTime |
long :等待的时间(以毫秒为单位) |
返回 | |
---|---|
boolean |
waitForDeviceAvailable
public IDevice waitForDeviceAvailable (long waitTime)
等待设备做出响应并可供测试。目前,这意味着 软件包管理器和外部存储空间是否可用。
参数 | |
---|---|
waitTime |
long :等待的时间(以毫秒为单位) |
返回 | |
---|---|
IDevice |
如果设备在时间到期之前变为在线状态,则 IDevice 。null
否则。 |
waitForDeviceAvailable
public IDevice waitForDeviceAvailable ()
等待设备做出响应并可供测试。
等同于 waitForDeviceAvailable(long)
,但使用默认设备
启动超时。
返回 | |
---|---|
IDevice |
如果设备在时间到期之前变为在线状态,则 IDevice 。null
否则。 |
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 模式) |
等待设备恢复
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 旁加载”州/省/自治区/直辖市
参数 | |
---|---|
waitTime |
long :等待的最长时间(以毫秒为单位) |
返回 | |
---|---|
boolean |
如果设备在超时之前处于旁加载状态,则为 true,否则为 false。 |
waitForDeviceNotAvailable
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
否则。 |
waitForDeviceShell
public boolean waitForDeviceShell (long waitTime)
等待设备响应基本 adb shell 命令。
参数 | |
---|---|
waitTime |
long :等待的时间(以毫秒为单位) |
返回 | |
---|---|
boolean |
如果设备在 waitTime 期间开始响应,则为 true 。 |
受保护的方法
createOutputReceiver
protected CollectingOutputReceiver createOutputReceiver ()
可供测试
返回 | |
---|---|
CollectingOutputReceiver |
CollectingOutputReceiver |
getCheckPollTime
protected long getCheckPollTime ()
可供测试
返回 | |
---|---|
long |
获取当前时间
protected long getCurrentTime ()
可供测试
返回 | |
---|---|
long |
postOnlineCheck
protected boolean postOnlineCheck (long waitTime)
要在在线设备上完成的其他检查
参数 | |
---|---|
waitTime |
long :放弃前等待的时间(毫秒) |
返回 | |
---|---|
boolean |
如果检查在 waitTime 到期之前成功,则为true 。否则为 false
|
抛出 | |
---|---|
|
com.android.tradefed.device.DeviceNotAvailableException |
DeviceNotAvailableException |
waitForStoreMount
protected boolean waitForStoreMount (long waitTime)
等待设备的外部存储空间进行装载。
参数 | |
---|---|
waitTime |
long :放弃前等待的时间(毫秒) |
返回 | |
---|---|
boolean |
如果在等待时间到期之前装载外部存储空间,则为 true 。否则为 false
|
抛出 | |
---|---|
DeviceNotAvailableException |