FastbootDeviceFlasher

public class FastbootDeviceFlasher
extends Object implements IDeviceFlasher

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


Una classe che si basa su fastboot per eseguire il flashing di un'immagine su hardware Android fisico.

Riepilogo

Costanti

String BASEBAND_IMAGE_NAME

Costruttori pubblici

FastbootDeviceFlasher()

Metodi pubblici

static String fetchImageVersion(IRunUtil runUtil, ITestDevice device, String imageName)

Metodo helper per ottenere la versione attuale dell'immagine sul dispositivo.

void flash(ITestDevice device, IDeviceBuildInfo deviceBuild)

I flash vengono creati sul dispositivo.

CommandStatus getSystemFlashingStatus()

Recupera lo stato di esecuzione del comando per il flashing delle partizioni di sistema principali.

IDeviceFlasher.UserDataFlashOption getUserDataFlashOption()

Indica se l'immagine dei dati utente deve essere cancellata, pulita o conservata

void overrideDeviceOptions(ITestDevice device)

Ignorare le opzioni per un dispositivo.

void preFlashOperations(ITestDevice device, IDeviceBuildInfo deviceBuild)

Tutte le operazioni e i controlli di configurazione che devono essere eseguiti prima della sezione critica del flashing effettivo.

void setDataWipeSkipList(Collection<String> dataWipeSkipList)

Imposta l'elenco dei percorsi in /data da evitare di cancellare quando utilizzi ITestsZipInstaller

Tieni presente che la granularità dell'elenco di salto è costituita dagli elementi secondari diretti di /data.

void setFlashOptions(Collection<String> flashOptions)

Imposta un elenco di opzioni da passare con i comandi flash/update.

void setFlashingResourcesRetriever(IFlashingResourcesRetriever retriever)

Imposta il meccanismo mediante il quale il flasher può recuperare i file delle risorse per il flashing.

void setForceSystemFlash(boolean forceSystemFlash)

Imposta se il sistema deve essere sempre flashato anche se è in esecuzione la build corrente

void setIncrementalFlashing(IncrementalImageUtil incrementalUtil)
void setRamdiskPartition(String ramdiskPartition)

Imposta la partizione ramdisk

void setShouldFlashRamdisk(boolean shouldFlashRamdisk)

Imposta se deve essere flashato un ramdisk aggiuntivo dopo l'aggiornamento del dispositivo tramite il file zip dell'immagine

void setUserDataFlashOption(IDeviceFlasher.UserDataFlashOption flashOption)

Attiva/disattiva l'opzione che indica se l'immagine dei dati utente deve essere flashata, cancellata o conservata

void setWipeTimeout(long timeout)

Imposta il timeout per la cancellazione dei dati.

boolean shouldCheckBasebandVersionAfterFlash()
boolean shouldFlashRamdisk()

Verifica se il flasher è impostato per avere un ramdisk aggiuntivo da flashare dopo l'aggiornamento del dispositivo tramite zip dell'immagine

boolean shouldSkipBasebandVersionCheck()
boolean shouldSkipBootloaderVersionCheck()
static boolean stderrContainsFailed(String stderr, boolean skipBootloaderVersionCheck, boolean skipBasebandVersionCheck, boolean skipFastbootFailedMessage)
static boolean stderrContainsFailed(String stderr, boolean skipBootloaderVersionCheck, boolean skipBasebandVersionCheck)

Metodi protetti

void checkAndFlashBaseband(ITestDevice device, IDeviceBuildInfo deviceBuild)

Se necessario, esegui il flashing dell'immagine della baseband sul dispositivo.

boolean checkAndFlashBootloader(ITestDevice device, IDeviceBuildInfo deviceBuild)

Se necessario, esegui il flashing dell'immagine del bootloader sul dispositivo.

boolean checkAndFlashSystem(ITestDevice device, String systemBuildId, String systemBuildFlavor, IDeviceBuildInfo deviceBuild)

Se necessario, esegui il flashing dell'immagine di sistema sul dispositivo.

boolean checkShouldFlashBaseband(ITestDevice device, IDeviceBuildInfo deviceBuild)

Controlla se è necessario eseguire il flashing del baseband sul dispositivo fornito.

IFlashingResourcesParser createFlashingResourcesParser(IDeviceBuildInfo localBuild, DeviceDescriptor descriptor)

Metodo di fabbrica per la creazione di un IFlashingResourcesParser.

void downloadExtraImageFiles(IFlashingResourcesParser resourceParser, IFlashingResourcesRetriever retriever, IDeviceBuildInfo localBuild)

Hook per consentire alle sottoclassi di scaricare file di immagini personalizzate aggiuntivi, se necessario.

void downloadFlashingResources(ITestDevice device, IDeviceBuildInfo localBuild)

Scarica i file immagine di flashing aggiuntivi necessari

String executeFastbootCmd(ITestDevice device, String... cmdArgs)

Metodo helper per eseguire il comando fastboot.

String executeLongFastbootCmd(ITestDevice device, String... cmdArgs)

Metodo helper per eseguire un comando fastboot a lunga esecuzione.

String executeLongFastbootCmd(ITestDevice device, Map<String, String> envVarMap, String... cmdArgs)

Metodo helper per eseguire un comando fastboot a esecuzione prolungata con variabili di ambiente.

void flashBaseband(ITestDevice device, File basebandImageFile)

Lampeggia l'immagine baseband specificata e riavvia il bootloader

void flashBootloader(ITestDevice device, File bootloaderImageFile, boolean requireReboot)

Lampeggia l'immagine del bootloader specificata.

void flashBootloader(ITestDevice device, File bootloaderImageFile)

Lampeggia l'immagine del bootloader specificata e riavvia il bootloader

void flashExtraImages(ITestDevice device, IDeviceBuildInfo deviceBuild)

Esegui il flash di tutte le partizioni specifiche del dispositivo prima di eseguire il flash del sistema e riavviare.

void flashPartition(ITestDevice device, File imgFile, String partition)

Eseguire il flashing di una singola partizione di un dispositivo

void flashRamdiskIfNeeded(ITestDevice device, IDeviceBuildInfo deviceBuild)
void flashSystem(ITestDevice device, IDeviceBuildInfo deviceBuild)

Flash dell'immagine di sistema sul dispositivo.

void flashTrusty(ITestDevice device, File trustyImageFile)

Lampeggia l'immagine Trusty specificata e si riavvia nel bootloader

void flashUserData(ITestDevice device, IDeviceBuildInfo deviceBuild)

Esegui il flash della partizione userdata sul dispositivo.

void flashUserDataFromDeviceImageFile(ITestDevice device, IDeviceBuildInfo deviceBuild)

Estrae userdata.img dal file immagine del dispositivo e lo carica sul dispositivo

String getBootPartitionName()

Recupera il nome della partizione di avvio per questo flasher del dispositivo.

String getBootloaderFilePrefix(ITestDevice device)

Ottieni il prefisso del file bootloader.

String getCurrentSlot(ITestDevice device)

Metodo helper per recuperare lo slot corrente (per i dispositivi compatibili con i test A/B).

IFlashingResourcesRetriever getFlashingResourcesRetriever()
FuseUtil getFuseUtil()
String getImageVersion(ITestDevice device, String imageName)
IRunUtil getRunUtil()

Esposto per i test.

void handleUserDataFlashing(ITestDevice device, IDeviceBuildInfo deviceBuild)

Gestire il flashing della partizione userdata/cache

boolean hasPartition(ITestDevice device, String partition)

Controlla con il bootloader se la partizione specificata esiste o meno

void preFlashSetup(ITestDevice device, IDeviceBuildInfo deviceBuild)

Esegui qualsiasi configurazione di pre-flashing aggiuntiva richiesta.

void setCheckBasebandVersionAfterFlash(boolean checkBasebandVersionAfterFlash)
void setSkipBasebandVersionCheck(boolean skipBasebandVersionCheck)
void setSkipBootloaderVersionCheck(boolean skipBootloaderVersionCheck)
void setSkipFastbootFailedMessage(boolean skipFastbootFailedMessage)
void setSystemBuildInfo(String systemBuildId, String systemBuildFlavor)
void verifyRequiredBoards(ITestDevice device, IFlashingResourcesParser resourceParser, String deviceProductType)

Verifica che il tipo di prodotto del dispositivo supporti la build da flashare.

void wipeCache(ITestDevice device)

Svuota la partizione della cache sul dispositivo.

void wipePartition(ITestDevice device, String partition)

Pulisci la partizione specificata con `fastboot erase <name>`

Costanti

BASEBAND_IMAGE_NAME

public static final String BASEBAND_IMAGE_NAME

Valore costante: "radio"

Costruttori pubblici

FastbootDeviceFlasher

public FastbootDeviceFlasher ()

Metodi pubblici

fetchImageVersion

public static String fetchImageVersion (IRunUtil runUtil, 
                ITestDevice device, 
                String imageName)

Metodo helper per ottenere la versione attuale dell'immagine sul dispositivo.

Parametri
runUtil IRunUtil

device ITestDevice: il ITestDevice su cui eseguire il comando

imageName String: il nome dell'immagine da recuperare.

Resi
String Stringa l'output stdout del comando

Genera
DeviceNotAvailableException se il dispositivo non è disponibile
TargetSetupError se il comando fastboot non va a buon fine o non è stato possibile determinare la versione

flash

public void flash (ITestDevice device, 
                IDeviceBuildInfo deviceBuild)

I flash vengono creati sul dispositivo.

Restituisce immediatamente dopo il completamento del flashing. Chi chiama deve attendere che il dispositivo sia online e disponibile prima di procedere con il test.

Parametri
device ITestDevice: ITestDevice da eseguire il flashing

deviceBuild IDeviceBuildInfo: IDeviceBuildInfo da eseguire il flashing

Genera
DeviceNotAvailableException
TargetSetupError

getSystemFlashingStatus

public CommandStatus getSystemFlashingStatus ()

Recupera lo stato di esecuzione del comando per il flashing delle partizioni di sistema principali.

Tieni presente che se le partizioni di sistema non vengono flashate (il sistema ha già la build da flashare), lo stato del comando potrebbe essere null

Resi
CommandStatus

getUserDataFlashOption

public IDeviceFlasher.UserDataFlashOption getUserDataFlashOption ()

Indica se l'immagine dei dati utente deve essere cancellata, pulita o conservata

Resi
IDeviceFlasher.UserDataFlashOption Indica se l'immagine dei dati utente deve essere flashata, cancellata o conservata.

overrideDeviceOptions

public void overrideDeviceOptions (ITestDevice device)

Ignorare le opzioni per un dispositivo. Utilizzato per ignorare i valori predefiniti delle opzioni se non sono supportati da un determinato dispositivo.

preFlashOperations

public void preFlashOperations (ITestDevice device, 
                IDeviceBuildInfo deviceBuild)

Tutte le operazioni e i controlli di configurazione che devono essere eseguiti prima della sezione critica del flashing effettivo. Nessuna di queste operazioni verrà inclusa nella sezione critica controllata dalla concorrenza.

Parametri
device ITestDevice: ITestDevice da eseguire il flashing

deviceBuild IDeviceBuildInfo: IDeviceBuildInfo da eseguire il flashing

Genera
DeviceNotAvailableException
TargetSetupError

setDataWipeSkipList

public void setDataWipeSkipList (Collection<String> dataWipeSkipList)

Imposta l'elenco dei percorsi in /data da evitare di cancellare quando utilizzi ITestsZipInstaller

Tieni presente che la granularità dell'elenco di salto è costituita dagli elementi secondari diretti di /data.

Parametri
dataWipeSkipList Collection

setFlashOptions

public void setFlashOptions (Collection<String> flashOptions)

Imposta un elenco di opzioni da passare con i comandi flash/update.

setFlashingResourcesRetriever

public void setFlashingResourcesRetriever (IFlashingResourcesRetriever retriever)

Imposta il meccanismo mediante il quale il flasher può recuperare i file delle risorse per il flashing.

Parametri
retriever IFlashingResourcesRetriever: il IFlashingResourcesRetriever da utilizzare

setForceSystemFlash

public void setForceSystemFlash (boolean forceSystemFlash)

Imposta se il sistema deve essere sempre flashato anche se è in esecuzione la build corrente

setIncrementalFlashing

public void setIncrementalFlashing (IncrementalImageUtil incrementalUtil)

Parametri
incrementalUtil IncrementalImageUtil

setRamdiskPartition

public void setRamdiskPartition (String ramdiskPartition)

Imposta la partizione ramdisk

setShouldFlashRamdisk

public void setShouldFlashRamdisk (boolean shouldFlashRamdisk)

Imposta se deve essere flashato un ramdisk aggiuntivo dopo l'aggiornamento del dispositivo tramite il file zip dell'immagine

setUserDataFlashOption

public void setUserDataFlashOption (IDeviceFlasher.UserDataFlashOption flashOption)

Attiva/disattiva l'opzione che indica se l'immagine dei dati utente deve essere flashata, cancellata o conservata

setWipeTimeout

public void setWipeTimeout (long timeout)

Imposta il timeout per la cancellazione dei dati.

Parametri
timeout long

shouldCheckBasebandVersionAfterFlash

public boolean shouldCheckBasebandVersionAfterFlash ()

Resi
boolean

shouldFlashRamdisk

public boolean shouldFlashRamdisk ()

Verifica se il flasher è impostato per avere un ramdisk aggiuntivo da flashare dopo l'aggiornamento del dispositivo tramite zip dell'immagine

Resi
boolean

shouldSkipBasebandVersionCheck

public boolean shouldSkipBasebandVersionCheck ()

Resi
boolean

shouldSkipBootloaderVersionCheck

public boolean shouldSkipBootloaderVersionCheck ()

Resi
boolean

stderrContainsFailed

public static boolean stderrContainsFailed (String stderr, 
                boolean skipBootloaderVersionCheck, 
                boolean skipBasebandVersionCheck, 
                boolean skipFastbootFailedMessage)

Parametri
stderr String

skipBootloaderVersionCheck boolean

skipBasebandVersionCheck boolean

skipFastbootFailedMessage boolean

Resi
boolean

stderrContainsFailed

public static boolean stderrContainsFailed (String stderr, 
                boolean skipBootloaderVersionCheck, 
                boolean skipBasebandVersionCheck)

Parametri
stderr String

skipBootloaderVersionCheck boolean

skipBasebandVersionCheck boolean

Resi
boolean

Metodi protetti

checkAndFlashBaseband

protected void checkAndFlashBaseband (ITestDevice device, 
                IDeviceBuildInfo deviceBuild)

Se necessario, esegui il flashing dell'immagine della baseband sul dispositivo. Esegue il flashing della banda di base solo se la versione attuale sul dispositivo è diversa da quella richiesta

Parametri
device ITestDevice: ITestDevice da eseguire il flashing

deviceBuild IDeviceBuildInfo: il IDeviceBuildInfo che contiene l'immagine della banda base da caricare

Genera
DeviceNotAvailableException se il dispositivo non è disponibile
TargetSetupError se l'operazione di flash della baseband non è riuscita

checkAndFlashBootloader

protected boolean checkAndFlashBootloader (ITestDevice device, 
                IDeviceBuildInfo deviceBuild)

Se necessario, esegui il flashing dell'immagine del bootloader sul dispositivo.

Il bootloader verrà flashato solo se la versione attuale sul dispositivo è diversa da quella richiesta.

Parametri
device ITestDevice: ITestDevice da eseguire il flashing

deviceBuild IDeviceBuildInfo: il IDeviceBuildInfo che contiene l'immagine del bootloader da eseguire il flashing

Resi
boolean true se il bootloader è stato flashato, false se è stato ignorato

Genera
DeviceNotAvailableException se il dispositivo non è disponibile
TargetSetupError se non è stato possibile eseguire il flashing del bootloader

checkAndFlashSystem

protected boolean checkAndFlashSystem (ITestDevice device, 
                String systemBuildId, 
                String systemBuildFlavor, 
                IDeviceBuildInfo deviceBuild)

Se necessario, esegui il flashing dell'immagine di sistema sul dispositivo.

Dai un'occhiata a ERROR(shouldFlashSystem(String,String,IDeviceBuildInfo)/#shouldFlashSystem(java.lang.String,java.lang.String,com.android.tradefed.build.IDeviceBuildInfo) shouldFlashSystem(String,String,IDeviceBuildInfo))

Indipendentemente dal percorso scelto, dopo l'esecuzione del metodo il dispositivo deve avviarsi nello spazio utente.

Parametri
device ITestDevice: ITestDevice da eseguire il flashing

systemBuildId String: l'ID build corrente in esecuzione sul dispositivo

systemBuildFlavor String: la variante di build corrente in esecuzione sul dispositivo

deviceBuild IDeviceBuildInfo: il IDeviceBuildInfo che contiene l'immagine di sistema da flashare

Resi
boolean true se il sistema è stato flashato, false se è stato ignorato

Genera
DeviceNotAvailableException se il dispositivo non è disponibile
TargetSetupError se non è stato possibile eseguire il flashing del bootloader

checkShouldFlashBaseband

protected boolean checkShouldFlashBaseband (ITestDevice device, 
                IDeviceBuildInfo deviceBuild)

Controlla se è necessario eseguire il flashing del baseband sul dispositivo fornito.

Parametri
device ITestDevice: il ITestDevice da controllare

deviceBuild IDeviceBuildInfo: il IDeviceBuildInfo che contiene l'immagine della banda base da controllare

Resi
boolean

Genera
DeviceNotAvailableException se il dispositivo non è disponibile
TargetSetupError se non è stato possibile eseguire il flashing della banda base

createFlashingResourcesParser

protected IFlashingResourcesParser createFlashingResourcesParser (IDeviceBuildInfo localBuild, 
                DeviceDescriptor descriptor)

Metodo di fabbrica per la creazione di un IFlashingResourcesParser.

Esposto per il test delle unità.

Parametri
localBuild IDeviceBuildInfo: il IDeviceBuildInfo da analizzare

descriptor DeviceDescriptor: il descrittore del dispositivo di cui viene eseguito il flashing.

Resi
IFlashingResourcesParser un IFlashingResourcesParser creato dal metodo di fabbrica.

Genera
com.android.tradefed.targetprep.TargetSetupError
TargetSetupError

downloadExtraImageFiles

protected void downloadExtraImageFiles (IFlashingResourcesParser resourceParser, 
                IFlashingResourcesRetriever retriever, 
                IDeviceBuildInfo localBuild)

Hook per consentire alle sottoclassi di scaricare file di immagini personalizzate aggiuntivi, se necessario.

Parametri
resourceParser IFlashingResourcesParser: il IFlashingResourcesParser

retriever IFlashingResourcesRetriever: il IFlashingResourcesRetriever

localBuild IDeviceBuildInfo: il IDeviceBuildInfo

Genera
com.android.tradefed.targetprep.TargetSetupError
TargetSetupError

downloadFlashingResources

protected void downloadFlashingResources (ITestDevice device, 
                IDeviceBuildInfo localBuild)

Scarica i file immagine di flashing aggiuntivi necessari

Parametri
device ITestDevice: il ITestDevice per scaricare le risorse

localBuild IDeviceBuildInfo: il IDeviceBuildInfo da compilare. Presuppone che il file immagine del dispositivo sia già impostato

Genera
DeviceNotAvailableException se il dispositivo non è disponibile
TargetSetupError se il recupero delle risorse non è riuscito

executeFastbootCmd

protected String executeFastbootCmd (ITestDevice device, 
                String... cmdArgs)

Metodo helper per eseguire il comando fastboot.

Parametri
device ITestDevice: il ITestDevice su cui eseguire il comando

cmdArgs String: gli argomenti da fornire a fastboot

Resi
String Stringa l'output stderr dal comando se non è vuoto. Altrimenti restituisce stdout. Alcuni comandi fastboot sono strani in quanto scaricano l'output su stderr in caso di esito positivo

Genera
DeviceNotAvailableException se il dispositivo non è disponibile
TargetSetupError se il comando fastboot non va a buon fine

executeLongFastbootCmd

protected String executeLongFastbootCmd (ITestDevice device, 
                String... cmdArgs)

Metodo helper per eseguire un comando fastboot a lunga esecuzione.

Nota: la maggior parte dei comandi fastboot viene eseguita normalmente entro il timeout consentito da ITestDevice.executeFastbootCommand(String...). Tuttavia, quando più dispositivi vengono flashati contemporaneamente, i comandi fastboot possono richiedere molto più tempo del normale.

Parametri
device ITestDevice: il ITestDevice su cui eseguire il comando

cmdArgs String: gli argomenti da fornire a fastboot

Resi
String Stringa l'output stderr dal comando se non è vuoto. Altrimenti restituisce stdout. Alcuni comandi fastboot sono strani in quanto scaricano l'output su stderr in caso di esito positivo

Genera
DeviceNotAvailableException se il dispositivo non è disponibile
TargetSetupError se il comando fastboot non va a buon fine

executeLongFastbootCmd

protected String executeLongFastbootCmd (ITestDevice device, 
                Map<String, String> envVarMap, 
                String... cmdArgs)

Metodo helper per eseguire un comando fastboot a esecuzione prolungata con variabili di ambiente.

Nota: la maggior parte dei comandi fastboot viene eseguita normalmente entro il timeout consentito da ITestDevice.executeFastbootCommand(String...). Tuttavia, quando più dispositivi vengono flashati contemporaneamente, i comandi fastboot possono richiedere molto più tempo del normale.

Parametri
device ITestDevice: il ITestDevice su cui eseguire il comando

envVarMap Map: la mappa che contiene le variabili di ambiente da impostare prima di eseguire il comando fastboot

cmdArgs String: gli argomenti da fornire a fastboot

Resi
String Stringa l'output stderr dal comando se non è vuoto. Altrimenti restituisce stdout. Alcuni comandi fastboot sono strani in quanto scaricano l'output su stderr in caso di esito positivo

Genera
DeviceNotAvailableException se il dispositivo non è disponibile
TargetSetupError se il comando fastboot non va a buon fine

flashBaseband

protected void flashBaseband (ITestDevice device, 
                File basebandImageFile)

Lampeggia l'immagine baseband specificata e riavvia il bootloader

Parametri
device ITestDevice: ITestDevice da eseguire il flashing

basebandImageFile File: l'immagine della banda base File

Genera
DeviceNotAvailableException se il dispositivo non è disponibile
TargetSetupError se non è stato possibile eseguire il flashing della banda base

flashBootloader

protected void flashBootloader (ITestDevice device, 
                File bootloaderImageFile, 
                boolean requireReboot)

Lampeggia l'immagine del bootloader specificata.

Parametri
device ITestDevice: ITestDevice da eseguire il flashing

bootloaderImageFile File: l'immagine del bootloader File

requireReboot boolean: se riavviare dopo il flashing

Genera
DeviceNotAvailableException se il dispositivo non è disponibile
TargetSetupError se il flash non è riuscito

flashBootloader

protected void flashBootloader (ITestDevice device, 
                File bootloaderImageFile)

Lampeggia l'immagine del bootloader specificata e riavvia il bootloader

Parametri
device ITestDevice: ITestDevice da eseguire il flashing

bootloaderImageFile File: l'immagine del bootloader File

Genera
DeviceNotAvailableException se il dispositivo non è disponibile
TargetSetupError se il flash non è riuscito

flashExtraImages

protected void flashExtraImages (ITestDevice device, 
                IDeviceBuildInfo deviceBuild)

Esegui il flash di tutte le partizioni specifiche del dispositivo prima di eseguire il flash del sistema e riavviare. Nessuna operazione a meno che non venga eseguita l'override.

Parametri
device ITestDevice: ITestDevice da eseguire il flashing

deviceBuild IDeviceBuildInfo: il IDeviceBuildInfo contenente i file di build

Genera
com.android.tradefed.device.DeviceNotAvailableException
com.android.tradefed.targetprep.TargetSetupError
DeviceNotAvailableException
TargetSetupError

flashPartition

protected void flashPartition (ITestDevice device, 
                File imgFile, 
                String partition)

Eseguire il flashing di una singola partizione di un dispositivo

Parametri
device ITestDevice: ITestDevice da eseguire il flashing

imgFile File: un File che punta all'immagine da caricare

partition String: il nome della partizione da flashare

Genera
DeviceNotAvailableException
TargetSetupError

flashRamdiskIfNeeded

protected void flashRamdiskIfNeeded (ITestDevice device, 
                IDeviceBuildInfo deviceBuild)

Parametri
device ITestDevice

deviceBuild IDeviceBuildInfo

Genera
DeviceNotAvailableException
TargetSetupError

flashSystem

protected void flashSystem (ITestDevice device, 
                IDeviceBuildInfo deviceBuild)

Flash dell'immagine di sistema sul dispositivo.

Parametri
device ITestDevice: ITestDevice da eseguire il flashing

deviceBuild IDeviceBuildInfo: IDeviceBuildInfo da eseguire il flashing

Genera
DeviceNotAvailableException se il dispositivo non è disponibile
TargetSetupError se il comando fastboot non va a buon fine

flashTrusty

protected void flashTrusty (ITestDevice device, 
                File trustyImageFile)

Lampeggia l'immagine Trusty specificata e si riavvia nel bootloader

Parametri
device ITestDevice: ITestDevice da eseguire il flashing

trustyImageFile File: l'immagine attendibile File

Genera
DeviceNotAvailableException se il dispositivo non è disponibile
TargetSetupError se il flash non è riuscito

flashUserData

protected void flashUserData (ITestDevice device, 
                IDeviceBuildInfo deviceBuild)

Esegui il flash della partizione userdata sul dispositivo.

Parametri
device ITestDevice: ITestDevice da eseguire il flashing

deviceBuild IDeviceBuildInfo: il IDeviceBuildInfo che contiene i file da flashare

Genera
DeviceNotAvailableException se il dispositivo non è disponibile
TargetSetupError if failed to flash user data

flashUserDataFromDeviceImageFile

protected void flashUserDataFromDeviceImageFile (ITestDevice device, 
                IDeviceBuildInfo deviceBuild)

Estrae userdata.img dal file immagine del dispositivo e lo carica sul dispositivo

Parametri
device ITestDevice: ITestDevice da eseguire il flashing

deviceBuild IDeviceBuildInfo: il IDeviceBuildInfo che contiene i file da flashare

Genera
DeviceNotAvailableException se il dispositivo non è disponibile
TargetSetupError se l'estrazione o il flashing dei dati utente non è riuscito

getBootPartitionName

protected String getBootPartitionName ()

Recupera il nome della partizione di avvio per questo flasher del dispositivo.

Il valore predefinito è "bootloader". Le sottoclassi devono eseguire l'override, se necessario.

Resi
String

getBootloaderFilePrefix

protected String getBootloaderFilePrefix (ITestDevice device)

Ottieni il prefisso del file bootloader.

Il valore predefinito è getBootPartitionName(). Le sottoclassi devono eseguire l'override, se necessario.

Parametri
device ITestDevice: ITestDevice da eseguire il flashing

Resi
String

Genera
DeviceNotAvailableException se il dispositivo non è disponibile
TargetSetupError se non è stato possibile ottenere il prefisso

getCurrentSlot

protected String getCurrentSlot (ITestDevice device)

Metodo helper per recuperare lo slot corrente (per i dispositivi compatibili con i test A/B).

Parametri
device ITestDevice: il ITestDevice su cui eseguire il comando.

Resi
String "a", "b" o null (se il dispositivo non supporta A/B)

Genera
com.android.tradefed.device.DeviceNotAvailableException
com.android.tradefed.targetprep.TargetSetupError
DeviceNotAvailableException
TargetSetupError

getFlashingResourcesRetriever

protected IFlashingResourcesRetriever getFlashingResourcesRetriever ()

Resi
IFlashingResourcesRetriever

getFuseUtil

protected FuseUtil getFuseUtil ()

Resi
FuseUtil

getImageVersion

protected String getImageVersion (ITestDevice device, 
                String imageName)

Parametri
device ITestDevice

imageName String

Resi
String

Genera
DeviceNotAvailableException
TargetSetupError

getRunUtil

protected IRunUtil getRunUtil ()

Esposto per i test.

Resi
IRunUtil

handleUserDataFlashing

protected void handleUserDataFlashing (ITestDevice device, 
                IDeviceBuildInfo deviceBuild)

Gestire il flashing della partizione userdata/cache

Parametri
device ITestDevice: ITestDevice da eseguire il flashing

deviceBuild IDeviceBuildInfo: il IDeviceBuildInfo che contiene i file da flashare

Genera
com.android.tradefed.device.DeviceNotAvailableException
com.android.tradefed.targetprep.TargetSetupError
DeviceNotAvailableException
TargetSetupError

hasPartition

protected boolean hasPartition (ITestDevice device, 
                String partition)

Controlla con il bootloader se la partizione specificata esiste o meno

Parametri
device ITestDevice: il ITestDevice su cui operare

partition String: il nome della partizione da controllare

Resi
boolean

Genera
DeviceNotAvailableException

preFlashSetup

protected void preFlashSetup (ITestDevice device, 
                IDeviceBuildInfo deviceBuild)

Esegui qualsiasi configurazione di pre-flashing aggiuntiva richiesta. Nessuna operazione, a meno che non venga eseguita l'override.

Parametri
device ITestDevice: il ITestDevice da preparare

deviceBuild IDeviceBuildInfo: il IDeviceBuildInfo contenente i file di build

Genera
com.android.tradefed.device.DeviceNotAvailableException
com.android.tradefed.targetprep.TargetSetupError
DeviceNotAvailableException
TargetSetupError

setCheckBasebandVersionAfterFlash

protected void setCheckBasebandVersionAfterFlash (boolean checkBasebandVersionAfterFlash)

Parametri
checkBasebandVersionAfterFlash boolean

setSkipBasebandVersionCheck

protected void setSkipBasebandVersionCheck (boolean skipBasebandVersionCheck)

Parametri
skipBasebandVersionCheck boolean

setSkipBootloaderVersionCheck

protected void setSkipBootloaderVersionCheck (boolean skipBootloaderVersionCheck)

Parametri
skipBootloaderVersionCheck boolean

setSkipFastbootFailedMessage

protected void setSkipFastbootFailedMessage (boolean skipFastbootFailedMessage)

Parametri
skipFastbootFailedMessage boolean

setSystemBuildInfo

protected void setSystemBuildInfo (String systemBuildId, 
                String systemBuildFlavor)

Parametri
systemBuildId String

systemBuildFlavor String

verifyRequiredBoards

protected void verifyRequiredBoards (ITestDevice device, 
                IFlashingResourcesParser resourceParser, 
                String deviceProductType)

Verifica che il tipo di prodotto del dispositivo supporti la build da flashare.

L'implementazione di base verificherà che deviceProductType sia incluso nella raccolta IFlashingResourcesParser.getRequiredBoards(). Le sottoclassi possono eseguire l'override come preferiscono.

Parametri
device ITestDevice: il ITestDevice da flashare

resourceParser IFlashingResourcesParser: il IFlashingResourcesParser

deviceProductType String: il tipo di prodotto di device

Genera
TargetSetupError se le informazioni della scheda richieste per la build non corrispondevano a quelle del dispositivo

wipeCache

protected void wipeCache (ITestDevice device)

Svuota la partizione della cache sul dispositivo.

Parametri
device ITestDevice: ITestDevice da eseguire il flashing

Genera
DeviceNotAvailableException se il dispositivo non è disponibile
TargetSetupError se non è stato possibile eseguire il flashing della cache

wipePartition

protected void wipePartition (ITestDevice device, 
                String partition)

Pulisci la partizione specificata con `fastboot erase <name>`

Parametri
device ITestDevice: il ITestDevice su cui operare

partition String: il nome della partizione da cancellare

Genera
DeviceNotAvailableException
TargetSetupError