OtaUpdateDeviceFlasher

public class OtaUpdateDeviceFlasher
extends Object implements IDeviceFlasher

java.lang.Object
   ↳ com.android.tradefed.targetprep.OtaUpdateDeviceFlasher


裝置刷機工具,可使用完整或增量 OTA 套件觸發 system/update_engine/scripts/update_device.py 指令碼,以更新裝置映像檔。如要正確使用這個刷機工具,裝置建構資訊必須包含名為「update-device-script」的檔案項目,該項目指向上述指令碼。

摘要

常數

String OTA_DOWNGRADE_PROP

String UPDATE_DEVICE_SCRIPT

String UPDATE_SUCCESS_OUTPUT

欄位

protected static final String IN_ZIP_SCRIPT_PATH

公用建構函式

OtaUpdateDeviceFlasher()

公用方法

void flash(ITestDevice device, IDeviceBuildInfo deviceBuild)

在裝置上刷新版本。

CommandStatus getSystemFlashingStatus()

擷取主要系統分割區的刷機指令執行狀態。

IDeviceFlasher.UserDataFlashOption getUserDataFlashOption()

取得是否應清除、保留或清除使用者資料映像檔

void overrideDeviceOptions(ITestDevice device)

裝置的覆寫選項。

void preFlashOperations(ITestDevice device, IDeviceBuildInfo deviceBuild)

所有設定作業和檢查都必須在實際刷寫重要區段之前完成。

void setDataWipeSkipList( dataWipeSkipList)

設定 /data 下的路徑清單,避免在使用 ITestsZipInstaller 時清除這些路徑

請注意,略過清單的精細程度為 /data 的直接子項。

void setFlashingResourcesRetriever(IFlashingResourcesRetriever retriever)

設定 Flasher 擷取資源檔案以進行刷機的機制。

void setForceSystemFlash(boolean forceSystemFlash)

設定系統是否應一律刷機,即使目前執行的版本也是如此

void setUserDataFlashOption(IDeviceFlasher.UserDataFlashOption flashOption)

切換是否要清除、保留或刷入使用者資料映像檔

void setWipeTimeout(long timeout)

設定清除資料的逾時時間。

受保護的方法

IRunUtil getRunUtil()

常數

OTA_DOWNGRADE_PROP

protected static final String OTA_DOWNGRADE_PROP

常數值: "ro.ota.allow_downgrade"

UPDATE_DEVICE_SCRIPT

protected static final String UPDATE_DEVICE_SCRIPT

常數值: "update-device-script"

UPDATE_SUCCESS_OUTPUT

protected static final String UPDATE_SUCCESS_OUTPUT

常數值: "onPayloadApplicationComplete(ErrorCode::kSuccess (0)"

欄位

IN_ZIP_SCRIPT_PATH

protected static final String IN_ZIP_SCRIPT_PATH

公用建構函式

OtaUpdateDeviceFlasher

public OtaUpdateDeviceFlasher ()

公用方法

Flash

public void flash (ITestDevice device, 
                IDeviceBuildInfo deviceBuild)

在裝置上刷新版本。

閃爍完成後立即返回。請等待裝置上線並可供使用,再繼續進行測試。

參數
device ITestDeviceITestDevice要閃爍

deviceBuild IDeviceBuildInfoIDeviceBuildInfo要閃爍

擲回
DeviceNotAvailableException
TargetSetupError

getSystemFlashingStatus

public CommandStatus getSystemFlashingStatus ()

擷取主要系統分割區的閃爍指令執行狀態。

請注意,如果系統分割區未刷入 (系統已刷入要刷入的建構版本),指令狀態可能會是 null

傳回
CommandStatus

getUserDataFlashOption

public IDeviceFlasher.UserDataFlashOption getUserDataFlashOption ()

取得是否應清除、保留或清除使用者資料映像檔

傳回
IDeviceFlasher.UserDataFlashOption 是否要清除、保留或還原使用者資料映像檔

overrideDeviceOptions

public void overrideDeviceOptions (ITestDevice device)

覆寫裝置的選項。如果特定裝置不支援預設選項值,可用於覆寫預設值。

preFlashOperations

public void preFlashOperations (ITestDevice device, 
                IDeviceBuildInfo deviceBuild)

所有設定作業和檢查都必須在實際閃爍重要部分之前進行。這些作業都不會納入並行控制的重要部分。

參數
device ITestDeviceITestDevice要閃爍

deviceBuild IDeviceBuildInfoIDeviceBuildInfo要閃爍

擲回
DeviceNotAvailableException
TargetSetupError

setDataWipeSkipList

public void setDataWipeSkipList ( dataWipeSkipList)

設定 /data 下的路徑清單,避免在使用 ITestsZipInstaller 時清除這些路徑

請注意,略過清單的精細程度為 /data 的直接子項。

參數
dataWipeSkipList

setFlashingResourcesRetriever

public void setFlashingResourcesRetriever (IFlashingResourcesRetriever retriever)

設定 Flasher 可擷取資源檔案以進行刷機的機制。

參數
retriever IFlashingResourcesRetriever:要使用的 IFlashingResourcesRetriever

setForceSystemFlash

public void setForceSystemFlash (boolean forceSystemFlash)

設定是否一律要刷入系統,即使目前執行的版本相同也一樣

setUserDataFlashOption

public void setUserDataFlashOption (IDeviceFlasher.UserDataFlashOption flashOption)

切換是否要清除、保留或清除使用者資料映像檔

setWipeTimeout

public void setWipeTimeout (long timeout)

設定清除資料的逾時時間。

參數
timeout long

受保護的方法

getRunUtil

protected IRunUtil getRunUtil ()

傳回
IRunUtil