IDeviceFlasher
public
interface
IDeviceFlasher
| com.android.tradefed.targetprep.IDeviceFlasher |
在裝置上顯示裝置圖片。
摘要
公用方法 | |
|---|---|
default
boolean
|
checkAntiRollback(ITestDevice device, IDeviceBuildInfo deviceBuild)
檢查是否已觸發防回溯機制。 |
abstract
void
|
flash(ITestDevice device, IDeviceBuildInfo deviceBuild)
在裝置上刷新版本。 |
default
Set<String>
|
getAdditionalFileFilters()
取得其他建構構件的篩選器。 |
abstract
CommandStatus
|
getSystemFlashingStatus()
擷取刷寫主要系統分割區的指令執行狀態。 |
abstract
IDeviceFlasher.UserDataFlashOption
|
getUserDataFlashOption()
Gets whether the user data image should be flashed, wiped, or retained |
abstract
void
|
overrideDeviceOptions(ITestDevice device)
裝置的覆寫選項。 |
default
void
|
postFlashOperations(ITestDevice device, IDeviceBuildInfo deviceBuild)
實際刷寫重要部分後,必須執行的所有清除作業和檢查。 |
default
void
|
preFlashOperations(ITestDevice device, IDeviceBuildInfo deviceBuild)
所有設定作業和檢查都必須在實際閃爍重要部分之前進行。 |
abstract
void
|
setDataWipeSkipList(Collection<String> dataWipeSkipList)
設定
請注意,略過清單的精細程度為 |
default
void
|
setExtraMetadata(Map<String, String> metadata)
允許刷機工具接收額外的中繼資料選項。 |
abstract
void
|
setFlashingResourcesRetriever(IFlashingResourcesRetriever retriever)
設定 Flasher 可擷取資源檔案以進行刷機的機制。 |
abstract
void
|
setForceSystemFlash(boolean forceSystemFlash)
設定系統是否一律要刷機,即使目前執行的版本也是如此 |
default
void
|
setRamdiskPartition(String ramdiskPartition)
設定 ramdisk 分割區 |
default
void
|
setShouldFlashRamdisk(boolean shouldFlashRamdisk)
設定是否要在透過映像檔 ZIP 檔案更新裝置後,刷入額外的 RAM 磁碟 |
abstract
void
|
setUserDataFlashOption(IDeviceFlasher.UserDataFlashOption flashOption)
切換是否應清除、保留或刷入使用者資料映像檔 |
abstract
void
|
setWipeTimeout(long timeout)
設定清除資料的逾時時間。 |
default
boolean
|
shouldFlashRamdisk()
檢查是否已設定刷機程式,以便在透過映像檔 ZIP 檔案更新裝置後,刷入額外的 ramdisk |
default
boolean
|
supportsFlashingInFastbootD()
實作刷機程式的裝置是否可在 fastbootd 模式下刷機。 |
default
void
|
tearDownFlasher()
這是實作閃爍的最後機會,可自行清理 |
公用方法
checkAntiRollback
public boolean checkAntiRollback (ITestDevice device, IDeviceBuildInfo deviceBuild)
確認是否觸發防回溯機制。
| 參數 | |
|---|---|
device |
ITestDevice |
deviceBuild |
IDeviceBuildInfo |
| 傳回 | |
|---|---|
boolean |
|
| 擲回 | |
|---|---|
DeviceNotAvailableException |
|
刷新
public abstract void flash (ITestDevice device, IDeviceBuildInfo deviceBuild)
在裝置上刷新版本。
韌體更新完成後,系統會立即傳回結果。呼叫端應等待裝置上線並可供使用,再繼續進行測試。
| 參數 | |
|---|---|
device |
ITestDevice:要刷新的 ITestDevice |
deviceBuild |
IDeviceBuildInfo:要刷新的 IDeviceBuildInfo |
| 擲回 | |
|---|---|
DeviceNotAvailableException |
如果裝置沒有回應 |
TargetSetupError |
如果無法刷新建構版本 |
getAdditionalFileFilters
public Set<String> getAdditionalFileFilters ()
取得其他建構構件的篩選器。
部分刷機工具需要特定建構構件,但這些構件並非預設使用。這類刷機工具應覆寫這個方法,這樣刷機工具的每位使用者就不必瞭解這些檔案,也不必提供指令列選項。
請注意,這個方法是在 IDeviceFlasher 的暫時執行個體上叫用,因此不應依賴預設建構函式提供的狀態以外的任何狀態。
Set 中的字串會解讀為檔案模式,系統會擷取符合模式的所有檔案。
這個方法預設會傳回空白的 Set。
| 傳回 | |
|---|---|
Set<String> |
|
getSystemFlashingStatus
public abstract CommandStatus getSystemFlashingStatus ()
擷取主要系統分割區的閃爍指令執行狀態。
請注意,如果未刷入系統分割區 (系統已具備要刷入的建構版本),指令狀態可能會是 null
| 傳回 | |
|---|---|
CommandStatus |
|
getUserDataFlashOption
public abstract IDeviceFlasher.UserDataFlashOption getUserDataFlashOption ()
取得是否應清除、保留或清除使用者資料映像檔
| 傳回 | |
|---|---|
IDeviceFlasher.UserDataFlashOption |
是否要清除、保留或刷入使用者資料映像檔 |
overrideDeviceOptions
public abstract void overrideDeviceOptions (ITestDevice device)
覆寫裝置的選項。如果特定裝置不支援預設選項值,可用於覆寫預設選項值。
postFlashOperations
public void postFlashOperations (ITestDevice device, IDeviceBuildInfo deviceBuild)
所有必須在實際刷新重要部分後進行的清理作業和檢查。這些作業都不會納入並行控制的重要部分。
| 參數 | |
|---|---|
device |
ITestDevice:要刷新的 ITestDevice |
deviceBuild |
IDeviceBuildInfo:要刷新的 IDeviceBuildInfo |
| 擲回 | |
|---|---|
DeviceNotAvailableException |
如果裝置沒有回應 |
TargetSetupError |
如有任何設定失敗 |
preFlashOperations
public void preFlashOperations (ITestDevice device, IDeviceBuildInfo deviceBuild)
所有設定作業和檢查都必須在實際閃爍關鍵部分之前進行。這些作業都不會納入並行控制的重要部分。
| 參數 | |
|---|---|
device |
ITestDevice:要刷新的 ITestDevice |
deviceBuild |
IDeviceBuildInfo:要刷新的 IDeviceBuildInfo |
| 擲回 | |
|---|---|
DeviceNotAvailableException |
如果裝置沒有回應 |
TargetSetupError |
如有任何設定失敗 |
setDataWipeSkipList
public abstract void setDataWipeSkipList (Collection<String> dataWipeSkipList)
設定 /data 下的路徑清單,避免在使用 ITestsZipInstaller 時清除這些路徑
請注意,略過清單的精細程度為 /data 的直接子項。
| 參數 | |
|---|---|
dataWipeSkipList |
Collection |
setExtraMetadata
public void setExtraMetadata (Map<String, String> metadata)
允許刷機工具接收額外的中繼資料選項。
| 參數 | |
|---|---|
metadata |
Map |
setFlashingResourcesRetriever
public abstract void setFlashingResourcesRetriever (IFlashingResourcesRetriever retriever)
設定 Flasher 擷取資源檔案以進行刷機的機制。
| 參數 | |
|---|---|
retriever |
IFlashingResourcesRetriever:要使用的 IFlashingResourcesRetriever |
setForceSystemFlash
public abstract void setForceSystemFlash (boolean forceSystemFlash)
設定是否一律要刷入系統,即使目前執行的版本相同也一樣
setRamdiskPartition
public void setRamdiskPartition (String ramdiskPartition)
設定 ramdisk 分割區
setShouldFlashRamdisk
public void setShouldFlashRamdisk (boolean shouldFlashRamdisk)
設定是否要在透過映像檔 ZIP 更新裝置後,刷入額外的 ramdisk
setUserDataFlashOption
public abstract void setUserDataFlashOption (IDeviceFlasher.UserDataFlashOption flashOption)
切換是否要清除、保留或清除使用者資料映像檔
setWipeTimeout
public abstract void setWipeTimeout (long timeout)
設定清除資料的逾時時間。
| 參數 | |
|---|---|
timeout |
long |
shouldFlashRamdisk
public boolean shouldFlashRamdisk ()
檢查是否已設定刷機程式,以便在透過映像檔 ZIP 更新裝置後,刷入額外的 ramdisk
| 傳回 | |
|---|---|
boolean |
|
supportsFlashingInFastbootD
public boolean supportsFlashingInFastbootD ()
實作刷機程式的裝置是否可在 fastbootd 模式下刷機。
| 傳回 | |
|---|---|
boolean |
|
tearDownFlasher
public void tearDownFlasher ()
這是實作閃爍燈的最後機會,可自行清理