SystemUpdaterDeviceFlasher

public class SystemUpdaterDeviceFlasher
extends Object implements IDeviceFlasher

java.lang.Object
com.android.tradefed.targetprep.SystemUpdaterDeviceFlasher


一种 IDeviceFlasher,它依赖于系统更新程序来安装捆绑在 OTA 更新软件包中的 系统映像。具体来说,此 实现不依赖于 fastboot。

摘要

公共构造函数

SystemUpdaterDeviceFlasher()

公共方法

void flash(ITestDevice device, IDeviceBuildInfo deviceBuild)

在设备上刷写 build。

此实现假定 IDeviceBuildInfo.getDeviceImageFile() 返回的设备映像文件是 OTA 更新 zip。

CommandStatus getSystemFlashingStatus()

检索用于刷写主系统分区的命令执行状态。

IDeviceFlasher.UserDataFlashOption getUserDataFlashOption()

获取是否应刷写、擦除或保留用户数据映像

void overrideDeviceOptions(ITestDevice device)

替换设备的选项。

void setDataWipeSkipList(Collection<String> dataWipeSkipList)

设置 /data 下的路径列表,以避免在使用 ITestsZipInstaller 时清除这些路径

请注意,跳过列表的粒度是 /data 的直接子项。

void setFlashingResourcesRetriever(IFlashingResourcesRetriever retriever)

设置刷写程序可用于检索刷写资源文件的机制。

void setForceSystemFlash(boolean forceSystemFlash)

设置是否应始终刷写系统,即使运行当前 build 也是如此

void setUserDataFlashOption(IDeviceFlasher.UserDataFlashOption flashOption)

切换是否应刷写、擦除或保留用户数据映像

此实现仅支持 IDeviceFlasher.UserDataFlashOption.TESTS_ZIPIDeviceFlasher.UserDataFlashOption.RETAIN 作为有效选项

void setWipeTimeout(long timeout)

设置擦除数据的超时时间。

公共构造函数

SystemUpdaterDeviceFlasher

public SystemUpdaterDeviceFlasher ()

公共方法

flash

public void flash (ITestDevice device, 
                IDeviceBuildInfo deviceBuild)

在设备上刷写 build。

刷写完成后立即返回。调用方应等待设备上线并可用,然后再继续进行测试。

此实现假定 IDeviceBuildInfo.getDeviceImageFile() 返回的设备映像文件是 OTA 更新 zip。在不符合此解释的环境中使用此更新程序是不安全的。

参数
device ITestDevice:要刷写的 ITestDevice

deviceBuild IDeviceBuildInfo:要刷写的 IDeviceBuildInfo

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

getSystemFlashingStatus

public CommandStatus getSystemFlashingStatus ()

检索用于刷写主系统分区的命令执行状态。

请注意,如果未刷写系统分区(系统已包含要刷写的 build) 则命令状态可能为 null

返回
CommandStatus

getUserDataFlashOption

public IDeviceFlasher.UserDataFlashOption getUserDataFlashOption ()

获取是否应刷写、擦除或保留用户数据映像

返回
IDeviceFlasher.UserDataFlashOption 是否应刷写、擦除或保留用户数据映像

overrideDeviceOptions

public void overrideDeviceOptions (ITestDevice device)

替换设备的选项。如果特定设备不支持默认值,则用于替换默认选项值。

setDataWipeSkipList

public void setDataWipeSkipList (Collection<String> dataWipeSkipList)

设置 /data 下的路径列表,以避免在使用 ITestsZipInstaller 时清除这些路径

请注意,跳过列表的粒度是 /data 的直接子项。

参数
dataWipeSkipList Collection

setFlashingResourcesRetriever

public void setFlashingResourcesRetriever (IFlashingResourcesRetriever retriever)

设置刷写程序可用于检索刷写资源文件的机制。

参数
retriever IFlashingResourcesRetriever:要使用的 IFlashingResourcesRetriever

setForceSystemFlash

public void setForceSystemFlash (boolean forceSystemFlash)

设置是否应始终刷写系统,即使运行当前 build 也是如此

setUserDataFlashOption

public void setUserDataFlashOption (IDeviceFlasher.UserDataFlashOption flashOption)

切换是否应刷写、擦除或保留用户数据映像

此实现仅支持 IDeviceFlasher.UserDataFlashOption.TESTS_ZIPIDeviceFlasher.UserDataFlashOption.RETAIN 作为有效选项

setWipeTimeout

public void setWipeTimeout (long timeout)

设置擦除数据的超时时间。

参数
timeout long