等待裝置復原

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)

嘗試在快速啟動模式下復原指定無回應的裝置。

void recoverDeviceRecovery(IDeviceStateMonitor monitor)

嘗試在復原模式中復原指定無回應的裝置。

void setFastbootPath(String fastbootPath)

設定要使用的 Quickboot 二進位檔路徑。

保護方法

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

mDisable 無回應重新啟動

protected boolean mDisableUnresponsiveReboot

mDisableUsbReset

protected boolean mDisableUsbReset

mFastbootWaitTime

protected long mFastbootWaitTime

mOnlineWaitTime

protected long mOnlineWaitTime

mRequiredMinBattery

protected int mRequiredMinBattery

mShellWaitTime

protected long mShellWaitTime

mWaitTime

protected long mWaitTime

公用建構函式

等待裝置復原

public WaitDeviceRecovery ()

公用方法

復原裝置

public void recoverDevice (IDeviceStateMonitor monitor, 
                boolean recoverUntilOnline)

嘗試復原無法通訊的特定裝置。

這個方法應封鎖,且只有在裝置處於要求狀態時才會傳回。

參數
monitor IDeviceStateMonitor:要使用的 IDeviceStateMonitor

recoverUntilOnline boolean:如果為 true,方法應在裝置於 ADB 連上網路時立即傳回。 如果為 false,應封鎖方法,直到裝置完全可進行測試 (即 IDeviceStateMonitor#waitForDeviceAvailable() 項成功。

擲回
DeviceNotAvailableException

恢復裝置系統啟動載入程式

public void recoverDeviceBootloader (IDeviceStateMonitor monitor)

嘗試在系統啟動載入程式模式下,復原指定無回應的裝置。

參數
monitor IDeviceStateMonitor:要使用的 IDeviceStateMonitor

擲回
DeviceNotAvailableException

復原裝置快速啟動

public void recoverDeviceFastbootd (IDeviceStateMonitor monitor)

嘗試在快速啟動模式下復原指定無回應的裝置。

參數
monitor IDeviceStateMonitor:要使用的 IDeviceStateMonitor

擲回
DeviceNotAvailableException

復原裝置復原

public void recoverDeviceRecovery (IDeviceStateMonitor monitor)

嘗試在復原模式中復原指定無回應的裝置。

參數
monitor IDeviceStateMonitor:要使用的 IDeviceStateMonitor

擲回
DeviceNotAvailableException

設定快速系統啟動路徑 (FastbootPath)

public void setFastbootPath (String fastbootPath)

設定要使用的 Quickboot 二進位檔路徑。

參數
fastbootPath String:定義 Quickboot 二進位檔路徑的 String

保護方法

檢查 MinBatteryLevel

protected void checkMinBatteryLevel (IDevice device)

檢查裝置電池電量是否符合最低需求

擲回
DeviceNotAvailableException 無法讀取電池電量或低於分鐘值

getRunUtil

protected IRunUtil getRunUtil ()

取得要使用的 RunUtil 例項。

可供單元測試使用。

傳回
IRunUtil

handleDeviceNotAvailable

protected void handleDeviceNotAvailable (IDeviceStateMonitor monitor, 
                boolean recoverTillOnline)

處理裝置無法使用的情況。

參數
monitor IDeviceStateMonitorIDeviceStateMonitor

recoverTillOnline boolean:如果裝置連上網路,此方法應傳回結果,而非 檢查回應速度

擲回
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

處理裝置無回應

protected void handleDeviceUnresponsive (IDevice device, 
                IDeviceStateMonitor monitor)

處理裝置已連上網路卻沒有回應的情況。

參數
device IDevice

擲回
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException