DeviceFlashPreparer

public abstract class DeviceFlashPreparer
extends BaseTargetPreparer implements IConfigurationReceiver

java.lang.Object
   ↳ com.android.tradefed.targetprep.BaseTargetPreparer
     ↳ com.android.tradefed.targetprep.DeviceFlashPreparer


ITargetPreparer 在實體 Android 硬體上刷新映像檔。

摘要

公用建構函式

DeviceFlashPreparer()

公用方法

void addBranchTransitionInIncremental(String origin, String destination)
IBuildInfo getBuild(TestInformation testInfo)

包裝 getBuildInfo,以便在特定情況下變更覆寫。

boolean isIncrementalFlashingEnabled()
boolean isIncrementalFlashingForceDisabled()
void setAllowCrossReleaseFlashing(boolean allowCrossReleaseFlashing)
void setAllowUnzipBaseline(boolean allowUnzipBaseline)
void setApplySnapshot(boolean applySnapshot)
void setConfiguration(IConfiguration configuration)

插入目前使用的 IConfiguration

void setIgnoreHostOptions(boolean ignoreHostOptions)
void setUp(TestInformation testInfo)

void setUseIncrementalNewFlow(boolean useIncrementalNewFlow)
void setUserDataFlashOption(IDeviceFlasher.UserDataFlashOption flashOption)

設定 userdata-flash 選項

void setWipeAfterApplySnapshot(boolean wipeAfterApplySnapshot)
void tearDown(TestInformation testInfo, Throwable e)

保護方法

void checkDeviceProductType(ITestDevice device, IDeviceBuildInfo deviceBuild)

在刷新前進行檢查,確保裝置與版本資訊相符。

abstract IDeviceFlasher createFlasher(ITestDevice device)

建立要使用的 IDeviceFlasher

long getDeviceBootWaitTime()

取得裝置啟動等待時間

IHostOptions getHostOptions()

取得要使用的 IHostOptions 例項。

void reportFlashMetrics(String branch, String buildFlavor, String buildId, String serial, long queueTime, long flashingTime, CommandStatus flashingStatus)

將裝置閃爍時間資料回報至指標後端

void setSkipPostFlashBuildIdCheck(boolean skipPostFlashBuildIdCheck)
void setUseIncrementalFlashing(boolean incrementalFlashing)

公用建構函式

DeviceFlashPreparer

public DeviceFlashPreparer ()

公用方法

addBranchTransitionInIncremental

public void addBranchTransitionInIncremental (String origin, 
                String destination)

參數
origin String

destination String

getBuild

public IBuildInfo getBuild (TestInformation testInfo)

包裝 getBuildInfo,以便在特定情況下變更覆寫。

參數
testInfo TestInformation

傳回
IBuildInfo

isIncrementalFlashingEnabled

public boolean isIncrementalFlashingEnabled ()

傳回
boolean

isIncrementalFlashingForceDisabled

public boolean isIncrementalFlashingForceDisabled ()

傳回
boolean

setAllowCrossReleaseFlashing

public void setAllowCrossReleaseFlashing (boolean allowCrossReleaseFlashing)

參數
allowCrossReleaseFlashing boolean

setAllowUnzipBaseline

public void setAllowUnzipBaseline (boolean allowUnzipBaseline)

參數
allowUnzipBaseline boolean

設定套用快照

public void setApplySnapshot (boolean applySnapshot)

參數
applySnapshot boolean

setConfiguration

public void setConfiguration (IConfiguration configuration)

插入使用中的 IConfiguration

參數
configuration IConfiguration

setIgnoreHostOptions

public void setIgnoreHostOptions (boolean ignoreHostOptions)

參數
ignoreHostOptions boolean

設定

public void setUp (TestInformation testInfo)

參數
testInfo TestInformation

擲回
BuildError
DeviceNotAvailableException
TargetSetupError

setUseIncrementalNewFlow

public void setUseIncrementalNewFlow (boolean useIncrementalNewFlow)

參數
useIncrementalNewFlow boolean

setUserDataFlashOption

public void setUserDataFlashOption (IDeviceFlasher.UserDataFlashOption flashOption)

設定 userdata-flash 選項

setWipeAfterApplySnapshot

public void setWipeAfterApplySnapshot (boolean wipeAfterApplySnapshot)

參數
wipeAfterApplySnapshot boolean

tearDown

public void tearDown (TestInformation testInfo, 
                Throwable e)

參數
testInfo TestInformation

e Throwable

擲回
DeviceNotAvailableException

保護方法

checkDeviceProductType

protected void checkDeviceProductType (ITestDevice device, 
                IDeviceBuildInfo deviceBuild)

在刷新前可能進行檢查,確保裝置與建構資訊相符。

參數
device ITestDevice:要閃爍的 ITestDevice

deviceBuild IDeviceBuildInfo:用於刷新的 IDeviceBuildInfo

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

createFlasher

protected abstract IDeviceFlasher createFlasher (ITestDevice device)

建立要使用的 IDeviceFlasher。子類別可覆寫

參數
device ITestDevice

傳回
IDeviceFlasher

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

getDeviceBootWaitTime

protected long getDeviceBootWaitTime ()

取得裝置啟動等待時間

傳回
long

getHost 選項

protected IHostOptions getHostOptions ()

取得要使用的 IHostOptions 例項。

開放單元測試

傳回
IHostOptions

reportFlashMetrics

protected void reportFlashMetrics (String branch, 
                String buildFlavor, 
                String buildId, 
                String serial, 
                long queueTime, 
                long flashingTime, 
                CommandStatus flashingStatus)

將裝置刷新時間資料回報給指標後端

參數
branch String:裝置版本的來源分支

buildFlavor String:裝置版本的建構變種版本

buildId String:裝置版本的版本號碼

serial String:裝置的序號

queueTime long:等待閃爍限制可用的時間

flashingTime long:裝置圖像 zip 檔案閃燈作業所需的時間

flashingStatus CommandStatus:刷新指令的執行狀態

setSkipPostFlashBuildIdCheck

protected void setSkipPostFlashBuildIdCheck (boolean skipPostFlashBuildIdCheck)

參數
skipPostFlashBuildIdCheck boolean

setUseIncrementalFlash

protected void setUseIncrementalFlashing (boolean incrementalFlashing)

參數
incrementalFlashing boolean