WaitDeviceRecovery

public class WaitDeviceRecovery
extends Object implements IDeviceRecovery

java.lang.Object 中
   ↳ com.android.tradefed.device.WaitDeviceRecovery


IDeviceRecovery 的简单实现,会等待设备联网 并响应简单的命令。

摘要

常量

int BOOTLOADER_POLL_ATTEMPTS

尝试检查设备是否在引导加载程序中的次数。

long INITIAL_PAUSE_TIME

开始恢复尝试前的等待时间(以毫秒为单位)

字段

protected long mBootloaderWaitTime

protected boolean mDisableUnresponsiveReboot

protected boolean mDisableUsbReset

protected long mFastbootWaitTime

protected long mOnlineWaitTime

protected int mRequiredMinBattery

protected long mShellWaitTime

protected long mWaitTime

公共构造函数

WaitDeviceRecovery()

公共方法

void recoverDevice(IDeviceStateMonitor monitor, boolean recoverUntilOnline)

尝试恢复无法再通信的指定设备。

void recoverDeviceBootloader(IDeviceStateMonitor monitor)

尝试在引导加载程序模式下恢复指定的无响应设备。

void recoverDeviceFastbootd(IDeviceStateMonitor monitor)

尝试在 fastbootd 模式下恢复指定的无响应设备。

void recoverDeviceRecovery(IDeviceStateMonitor monitor)

尝试在恢复模式下恢复指定的无响应设备。

void setFastbootPath(String fastbootPath)

设置要使用的 fastboot 二进制文件的路径。

受保护的方法

void checkMinBatteryLevel(IDevice device)

检查设备电池电量是否满足最低要求

IRunUtil getRunUtil()

获取要使用的 RunUtil 实例。

void handleDeviceNotAvailable(IDeviceStateMonitor monitor, boolean recoverTillOnline)

处理设备不可用的情况。

void handleDeviceUnresponsive(IDevice device, IDeviceStateMonitor monitor)

处理设备在线但无响应的情况。

常量

BOOTLOADER_POLL_ATTEMPTS

public static final int BOOTLOADER_POLL_ATTEMPTS

尝试检查设备是否在引导加载程序中的次数。

可供单元测试

常量值: 3 次 (0x00000003)

暂停时间:INITIAL_PAUSE_TIME

protected static final long INITIAL_PAUSE_TIME

开始恢复尝试前的等待时间(以毫秒为单位)

常量值: 5,000 名 (0x0000000000001388)

字段

mBootloaderWaitTime

protected long mBootloaderWaitTime

mDisableUnresponseReboot

protected boolean mDisableUnresponsiveReboot

mDisableUsbReset

protected boolean mDisableUsbReset

mFastbootWaitTime

protected long mFastbootWaitTime

mOnlineWaitTime

protected long mOnlineWaitTime

所需最小电量

protected int mRequiredMinBattery

mShellWaitTime

protected long mShellWaitTime

mwaitTime

protected long mWaitTime

公共构造函数

WaitDeviceRecovery

public WaitDeviceRecovery ()

公共方法

恢复设备

public void recoverDevice (IDeviceStateMonitor monitor, 
                boolean recoverUntilOnline)

尝试恢复无法再通信的指定设备。

方法应阻塞,仅在设备处于已请求状态时返回。

参数
monitor IDeviceStateMonitor:要使用的 IDeviceStateMonitor

recoverUntilOnline boolean:如果为 true,方法会在设备在 adb 上处于在线状态时立即返回。 如果为 false,方法应阻塞,直到设备完全可供测试(即 IDeviceStateMonitor#waitForDeviceAvailable() 成功。

抛出
DeviceNotAvailableException

recoveryDeviceBootloader

public void recoverDeviceBootloader (IDeviceStateMonitor monitor)

尝试在引导加载程序模式下恢复指定的无响应设备。

参数
monitor IDeviceStateMonitor:要使用的 IDeviceStateMonitor

抛出
DeviceNotAvailableException

recoveryDeviceFastbootd(恢复设备快速启动)

public void recoverDeviceFastbootd (IDeviceStateMonitor monitor)

尝试在 fastbootd 模式下恢复指定的无响应设备。

参数
monitor IDeviceStateMonitor:要使用的 IDeviceStateMonitor

抛出
DeviceNotAvailableException

恢复设备恢复

public void recoverDeviceRecovery (IDeviceStateMonitor monitor)

尝试在恢复模式下恢复指定的无响应设备。

参数
monitor IDeviceStateMonitor:要使用的 IDeviceStateMonitor

抛出
DeviceNotAvailableException

setFastbootPath

public void setFastbootPath (String fastbootPath)

设置要使用的 fastboot 二进制文件的路径。

参数
fastbootPath String:用于定义 fastboot 二进制文件路径的 String

受保护的方法

checkMinBatteryLevel

protected void checkMinBatteryLevel (IDevice device)

检查设备电池电量是否满足最低要求

抛出
DeviceNotAvailableException 如果无法读取电池电量或低于 分钟

getRunUtil

protected IRunUtil getRunUtil ()

获取要使用的 RunUtil 实例。

公开用于单元测试。

返回
IRunUtil

handleDeviceNotAvailable

protected void handleDeviceNotAvailable (IDeviceStateMonitor monitor, 
                boolean recoverTillOnline)

处理设备不可用的情况。

参数
monitor IDeviceStateMonitorIDeviceStateMonitor

recoverTillOnline boolean:如果为 true,则此方法应在设备处于在线状态时返回 检查响应速度

抛出
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

句柄设备无响应

protected void handleDeviceUnresponsive (IDevice device, 
                IDeviceStateMonitor monitor)

处理设备在线但无响应的情况。

参数
device IDevice

抛出
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException