O Google tem o compromisso de promover a igualdade racial para as comunidades negras. Saiba como.

FastbootDeviceFlasher

public class FastbootDeviceFlasher
extends Object implements IDeviceFlasher

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


Uma classe que depende do fastboot para fazer o flash de uma imagem em hardware Android físico.

Resumo

Campos

public static final String BASEBAND_IMAGE_NAME

Construtoras públicas

FastbootDeviceFlasher ()

Métodos públicos

void flash (ITestDevice device, IDeviceBuildInfo deviceBuild)

Flashes construídos no dispositivo.

CommandStatus getSystemFlashingStatus ()

Recupere o status de execução do comando para as partições do sistema primário em flash.

IDeviceFlasher.UserDataFlashOption getUserDataFlashOption ()

Obtém se a imagem de dados do usuário deve ser removida, apagada ou retida

void overrideDeviceOptions (ITestDevice device)

Substituir opções para um dispositivo.

void setDataWipeSkipList ( dataWipeSkipList) setDataWipeSkipList ( dataWipeSkipList)

Define a lista de caminhos sob /data para compensação evitar ao usar ITestsZipInstaller

Note-se que a granularidade da lista de salto é filhos diretos de /data .

void setFlashOptions ( flashOptions) setFlashOptions ( flashOptions)

Define uma lista de opções para passar com os comandos de flash / atualização.

void setFlashingResourcesRetriever ( IFlashingResourcesRetriever retriever)

Define o mecanismo pelo qual o pisca-pisca pode recuperar arquivos de recursos para piscar.

void setForceSystemFlash (boolean forceSystemFlash)

Define se o sistema deve sempre ser atualizado, mesmo se estiver executando a compilação atual

void setRamdiskPartition (String ramdiskPartition)

Define a partição do ramdisk

void setShouldFlashRamdisk (boolean shouldFlashRamdisk)

Define se um ramdisk adicional deve ser flasheado após a atualização do dispositivo via arquivo zip de imagem

void setUserDataFlashOption ( IDeviceFlasher.UserDataFlashOption flashOption)

Alterna se a imagem de dados do usuário deve ser removida, apagada ou retida

void setWipeTimeout (long timeout)

Defina o tempo limite para limpar os dados.

boolean shouldFlashRamdisk ()

Verifica se o pisca-pisca está configurado para ter um ramdisk adicional deve ser flasheado após a atualização do dispositivo via zip de imagem

Métodos protegidos

void checkAndFlashBaseband (ITestDevice device, IDeviceBuildInfo deviceBuild)

Se necessário, atualize a imagem da banda base no dispositivo.

boolean checkAndFlashBootloader (ITestDevice device, IDeviceBuildInfo deviceBuild)

Se necessário, atualize a imagem do carregador de inicialização no dispositivo.

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

Se necessário, atualize a imagem do sistema no dispositivo.

boolean checkShouldFlashBaseband (ITestDevice device, IDeviceBuildInfo deviceBuild)

Verifique se a banda base no dispositivo fornecido precisa ser flasheada.

IFlashingResourcesParser createFlashingResourcesParser ( IDeviceBuildInfo localBuild, DeviceDescriptor descriptor)

Método de fábrica para a criação de um IFlashingResourcesParser .

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

Hook para permitir que as subclasses baixem arquivos de imagem customizados extras, se necessário.

void downloadFlashingResources (ITestDevice device, IDeviceBuildInfo localBuild)

Faz o download de arquivos extras de imagens piscantes necessários

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

Método auxiliar para executar o comando fastboot.

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

Método auxiliar para executar um comando fastboot de longa duração.

void flashBaseband (ITestDevice device, File basebandImageFile)

Pisca a imagem de banda base fornecida e reinicia no bootloader

void flashBootloader (ITestDevice device, File bootloaderImageFile)

Pisca a imagem do bootloader dada e reinicia no bootloader

void flashExtraImages (ITestDevice device, IDeviceBuildInfo deviceBuild)

Atualize quaisquer partições específicas do dispositivo antes de atualizar o sistema e reinicializar.

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

Flash uma partição individual de um dispositivo

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

Faça o flash da imagem do sistema no dispositivo.

void flashUserData (ITestDevice device, IDeviceBuildInfo deviceBuild)

Partição de dados do usuário do Flash no dispositivo.

void flashUserDataFromDeviceImageFile (ITestDevice device, IDeviceBuildInfo deviceBuild)

Extrai o userdata.img do arquivo de imagem do dispositivo e o atualiza no dispositivo

String getBootPartitionName ()

Obtenha o nome da partição de inicialização para este pisca-pisca de dispositivo.

String getBootloaderFilePrefix (ITestDevice device)

Obtenha o prefixo do arquivo do carregador de inicialização.

String getCurrentSlot (ITestDevice device)

Método auxiliar para recuperar o slot atual (para dispositivos com capacidade A / B).

IFlashingResourcesRetriever getFlashingResourcesRetriever ()
String getImageVersion (ITestDevice device, String imageName)

Método auxiliar para obter a versão da imagem atual no dispositivo.

IRunUtil getRunUtil ()

Exposto para teste.

void handleUserDataFlashing (ITestDevice device, IDeviceBuildInfo deviceBuild)

Lidar com flashing de dados de usuário / partição de cache

boolean hasPartition (ITestDevice device, String partition)

Verifica com o bootloader se a partição especificada existe ou não

void preFlashSetup (ITestDevice device, IDeviceBuildInfo deviceBuild)

Execute qualquer configuração de pré-flashing adicional necessária.

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

Verifique se o tipo de produto do dispositivo é compatível com o build-to-be-flashed.

void wipeCache (ITestDevice device)

Limpe a partição do cache no dispositivo.

void wipePartition (ITestDevice device, String partition)

Limpe a partição especificada com `fastboot erase <nome>`

Campos

BASEBAND_IMAGE_NAME

public static final String BASEBAND_IMAGE_NAME

Construtoras públicas

FastbootDeviceFlasher

public FastbootDeviceFlasher ()

Métodos públicos

clarão

public void flash (ITestDevice device, 
                IDeviceBuildInfo deviceBuild)

Flashes construídos no dispositivo.

Retorna imediatamente após a conclusão do flash. Os chamadores devem esperar que o dispositivo esteja online e disponível antes de prosseguir com o teste.

Parâmetros
device ITestDevice : o ITestDevice a piscar

deviceBuild IDeviceBuildInfo : o IDeviceBuildInfo a piscar

Lança
DeviceNotAvailableException
TargetSetupError

getSystemFlashingStatus

public CommandStatus getSystemFlashingStatus ()

Recupere o status de execução do comando para as partições do sistema primário em flash.

Observe que, se as partições do sistema não são brilhou (sistema já tem o build para ser brilhou) o status de comando pode ser null

Devoluções
CommandStatus

getUserDataFlashOption

public IDeviceFlasher.UserDataFlashOption getUserDataFlashOption ()

Obtém se a imagem de dados do usuário deve ser removida, apagada ou retida

Devoluções
IDeviceFlasher.UserDataFlashOption Se a imagem de dados do usuário deve ser removida, apagada ou retida

overrideDeviceOptions

public void overrideDeviceOptions (ITestDevice device)

Substituir opções para um dispositivo. Usado para substituir os valores de opção padrão se os padrões não forem suportados por um dispositivo específico.

setDataWipeSkipList

public void setDataWipeSkipList ( dataWipeSkipList)

Define a lista de caminhos sob /data para compensação evitar ao usar ITestsZipInstaller

Note-se que a granularidade da lista de salto é filhos diretos de /data .

Parâmetros
dataWipeSkipList

setFlashOptions

public void setFlashOptions ( flashOptions)

Define uma lista de opções para passar com os comandos de flash / atualização.

setFlashingResourcesRetriever

public void setFlashingResourcesRetriever (IFlashingResourcesRetriever retriever)

Define o mecanismo pelo qual o pisca-pisca pode recuperar arquivos de recursos para piscar.

Parâmetros
retriever IFlashingResourcesRetriever : o IFlashingResourcesRetriever ao uso

setForceSystemFlash

public void setForceSystemFlash (boolean forceSystemFlash)

Define se o sistema deve sempre ser atualizado, mesmo se estiver executando a compilação atual

setRamdiskPartition

public void setRamdiskPartition (String ramdiskPartition)

Define a partição do ramdisk

setShouldFlashRamdisk

public void setShouldFlashRamdisk (boolean shouldFlashRamdisk)

Define se um ramdisk adicional deve ser flasheado após a atualização do dispositivo via arquivo zip de imagem

setUserDataFlashOption

public void setUserDataFlashOption (IDeviceFlasher.UserDataFlashOption flashOption)

Alterna se a imagem de dados do usuário deve ser removida, apagada ou retida

setWipeTimeout

public void setWipeTimeout (long timeout)

Defina o tempo limite para limpar os dados.

Parâmetros
timeout long

shouldFlashRamdisk

public boolean shouldFlashRamdisk ()

Verifica se o pisca-pisca está configurado para ter um ramdisk adicional deve ser flasheado após a atualização do dispositivo via zip de imagem

Devoluções
boolean

Métodos protegidos

checkAndFlashBaseband

protected void checkAndFlashBaseband (ITestDevice device, 
                IDeviceBuildInfo deviceBuild)

Se necessário, atualize a imagem da banda base no dispositivo. Irá piscar a banda base apenas se a versão atual no dispositivo! = Versão necessária

Parâmetros
device ITestDevice : o ITestDevice a piscar

deviceBuild IDeviceBuildInfo : o IDeviceBuildInfo que contém a imagem de banda base para flash

Lança
DeviceNotAvailableException se o dispositivo não estiver disponível
TargetSetupError se falhou em flash baseband

checkAndFlashBootloader

protected boolean checkAndFlashBootloader (ITestDevice device, 
                IDeviceBuildInfo deviceBuild)

Se necessário, atualize a imagem do carregador de inicialização no dispositivo.

Irá piscar o bootloader apenas se a versão atual no dispositivo! = Versão necessária.

Parâmetros
device ITestDevice : o ITestDevice a piscar

deviceBuild IDeviceBuildInfo : o IDeviceBuildInfo que contém a imagem bootloader a piscar

Devoluções
boolean true se bootloader foi brilhou, false se ele foi ignorado

Lança
DeviceNotAvailableException se o dispositivo não estiver disponível
TargetSetupError se falhou ao carregar o bootloader

checkAndFlashSystem

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

Se necessário, atualize a imagem do sistema no dispositivo.

Por favor, olhe ERROR(/#shouldFlashSystem(String,String,com.android.tradefed.build.IDeviceBuildInfo))

Independentemente do caminho escolhido, após a execução do método, o dispositivo deve inicializar no espaço do usuário.

Parâmetros
device ITestDevice : o ITestDevice a piscar

systemBuildId String : a corrente ID de construção em execução no dispositivo

systemBuildFlavor String : o sabor compilação atual em execução no dispositivo

deviceBuild IDeviceBuildInfo : o IDeviceBuildInfo que contém a imagem do sistema de flash

Devoluções
boolean true se o sistema foi brilhou, false se ele foi ignorado

Lança
DeviceNotAvailableException se o dispositivo não estiver disponível
TargetSetupError se falhou ao carregar o bootloader

checkShouldFlashBaseband

protected boolean checkShouldFlashBaseband (ITestDevice device, 
                IDeviceBuildInfo deviceBuild)

Verifique se a banda base no dispositivo fornecido precisa ser flasheada.

Parâmetros
device ITestDevice : o ITestDevice para verificação

deviceBuild IDeviceBuildInfo : o IDeviceBuildInfo que contém a imagem de banda base para verificar

Devoluções
boolean

Lança
DeviceNotAvailableException se o dispositivo não estiver disponível
TargetSetupError se falhou em flash baseband

createFlashingResourcesParser

protected IFlashingResourcesParser createFlashingResourcesParser (IDeviceBuildInfo localBuild, 
                DeviceDescriptor descriptor)

Método de fábrica para a criação de um IFlashingResourcesParser .

Exposto para teste de unidade.

Parâmetros
localBuild IDeviceBuildInfo : o IDeviceBuildInfo para analisar

descriptor DeviceDescriptor : o descritor do dispositivo que está sendo brilharam.

Devoluções
IFlashingResourcesParser um IFlashingResourcesParser criado pelo método de fábrica.

Lança
TargetSetupError

downloadExtraImageFiles

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

Hook para permitir que as subclasses baixem arquivos de imagem customizados extras, se necessário.

Parâmetros
resourceParser IFlashingResourcesParser : o IFlashingResourcesParser

retriever IFlashingResourcesRetriever : o IFlashingResourcesRetriever

localBuild IDeviceBuildInfo : o IDeviceBuildInfo

Lança
TargetSetupError

downloadFlashingResources

protected void downloadFlashingResources (ITestDevice device, 
                IDeviceBuildInfo localBuild)

Faz o download de arquivos extras de imagens piscantes necessários

Parâmetros
device ITestDevice : o ITestDevice aos recursos de download para

localBuild IDeviceBuildInfo : o IDeviceBuildInfo para preencher. Presume que o arquivo de imagem do dispositivo já está definido

Lança
DeviceNotAvailableException se o dispositivo não estiver disponível
TargetSetupError se falhou em recuperar recursos

executeFastbootCmd

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

Método auxiliar para executar o comando fastboot.

Parâmetros
device ITestDevice : o ITestDevice para executar comandos no

cmdArgs String : os argumentos para fornecer a fastboot

Devoluções
String String a saída stderr do comando se não estiver vazio. Caso contrário, retorna o stdout Alguns comandos do fastboot são estranhos por despejarem a saída para o stderr em caso de sucesso

Lança
DeviceNotAvailableException se o dispositivo não estiver disponível
TargetSetupError se o comando fastboot falhar

executeLongFastbootCmd

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

Método auxiliar para executar um comando fastboot de longa duração.

Nota: A maior parte dos comandos fastboot normalmente executar dentro do tempo limite permitido pela INativeDevice.executeFastbootCommand(String) . No entanto, quando vários dispositivos estão piscando ao mesmo tempo, os comandos fastboot podem demorar muito mais do que o normal.

Parâmetros
device ITestDevice : o ITestDevice para executar comandos no

cmdArgs String : os argumentos para fornecer a fastboot

Devoluções
String String a saída stderr do comando se não estiver vazio. Caso contrário, retorna o stdout Alguns comandos do fastboot são estranhos por despejarem a saída para o stderr em caso de sucesso

Lança
DeviceNotAvailableException se o dispositivo não estiver disponível
TargetSetupError se o comando fastboot falhar

flashBaseband

protected void flashBaseband (ITestDevice device, 
                File basebandImageFile)

Pisca a imagem de banda base fornecida e reinicia no bootloader

Parâmetros
device ITestDevice : o ITestDevice a piscar

basebandImageFile File : a imagem baseband ERROR(/File)

Lança
DeviceNotAvailableException se o dispositivo não estiver disponível
TargetSetupError se falhou em flash baseband

flashBootloader

protected void flashBootloader (ITestDevice device, 
                File bootloaderImageFile)

Pisca a imagem do bootloader dada e reinicia no bootloader

Parâmetros
device ITestDevice : o ITestDevice a piscar

bootloaderImageFile File : a imagem bootloader ERROR(/File)

Lança
DeviceNotAvailableException se o dispositivo não estiver disponível
TargetSetupError se falhou em piscar

flashExtraImages

protected void flashExtraImages (ITestDevice device, 
                IDeviceBuildInfo deviceBuild)

Atualize quaisquer partições específicas do dispositivo antes de atualizar o sistema e reinicializar. No-op, a menos que seja substituído.

Parâmetros
device ITestDevice : o ITestDevice a piscar

deviceBuild IDeviceBuildInfo : o IDeviceBuildInfo contendo os arquivos de compilação

Lança
com.android.tradefed.device.DeviceNotAvailableException
TargetSetupError
DeviceNotAvailableException

flashPartition

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

Flash uma partição individual de um dispositivo

Parâmetros
device ITestDevice : o ITestDevice a piscar

imgFile File : a ERROR(/File) apontando para a imagem a ser brilhou

partition String : o nome da partição a ser brilhou

Lança
DeviceNotAvailableException
TargetSetupError

flashRamdiskIfNeeded

protected void flashRamdiskIfNeeded (ITestDevice device, 
                IDeviceBuildInfo deviceBuild)

Parâmetros
device ITestDevice

deviceBuild IDeviceBuildInfo

Lança
DeviceNotAvailableException
TargetSetupError

flashSystem

protected void flashSystem (ITestDevice device, 
                IDeviceBuildInfo deviceBuild)

Faça o flash da imagem do sistema no dispositivo.

Parâmetros
device ITestDevice : o ITestDevice a piscar

deviceBuild IDeviceBuildInfo : o IDeviceBuildInfo a piscar

Lança
DeviceNotAvailableException se o dispositivo não estiver disponível
TargetSetupError se o comando fastboot falhar

flashUserData

protected void flashUserData (ITestDevice device, 
                IDeviceBuildInfo deviceBuild)

Partição de dados do usuário do Flash no dispositivo.

Parâmetros
device ITestDevice : o ITestDevice a piscar

deviceBuild IDeviceBuildInfo : o IDeviceBuildInfo que contém os arquivos para o Flash

Lança
DeviceNotAvailableException se o dispositivo não estiver disponível
TargetSetupError se falhou em atualizar os dados do usuário

flashUserDataFromDeviceImageFile

protected void flashUserDataFromDeviceImageFile (ITestDevice device, 
                IDeviceBuildInfo deviceBuild)

Extrai o userdata.img do arquivo de imagem do dispositivo e o atualiza no dispositivo

Parâmetros
device ITestDevice : o ITestDevice a piscar

deviceBuild IDeviceBuildInfo : o IDeviceBuildInfo que contém os arquivos para o Flash

Lança
DeviceNotAvailableException se o dispositivo não estiver disponível
TargetSetupError se falhou em extrair ou atualizar os dados do usuário

getBootPartitionName

protected String getBootPartitionName ()

Obtenha o nome da partição de inicialização para este pisca-pisca de dispositivo.

O padrão é 'bootloader'. As subclasses devem ser substituídas, se necessário.

Devoluções
String

getBootloaderFilePrefix

protected String getBootloaderFilePrefix (ITestDevice device)

Obtenha o prefixo do arquivo do carregador de inicialização.

O padrão é getBootPartitionName() . As subclasses devem ser substituídas, se necessário.

Parâmetros
device ITestDevice : o ITestDevice a piscar

Devoluções
String

Lança
DeviceNotAvailableException se o dispositivo não estiver disponível
TargetSetupError se falhou em obter o prefixo

getCurrentSlot

protected String getCurrentSlot (ITestDevice device)

Método auxiliar para recuperar o slot atual (para dispositivos com capacidade A / B).

Parâmetros
device ITestDevice : o ITestDevice para executar comandos no.

Devoluções
String "a", "b" ou nulo (se o dispositivo não for compatível com A / B)

Lança
com.android.tradefed.device.DeviceNotAvailableException
TargetSetupError
DeviceNotAvailableException

getFlashingResourcesRetriever

protected IFlashingResourcesRetriever getFlashingResourcesRetriever ()

Devoluções
IFlashingResourcesRetriever

getImageVersion

protected String getImageVersion (ITestDevice device, 
                String imageName)

Método auxiliar para obter a versão da imagem atual no dispositivo.

Parâmetros
device ITestDevice : o ITestDevice para executar comandos no

imageName String : o nome de imagem para obter.

Devoluções
String String a saída stdout do comando

Lança
DeviceNotAvailableException se o dispositivo não estiver disponível
TargetSetupError se o comando fastboot falhar ou a versão não puder ser determinada

getRunUtil

protected IRunUtil getRunUtil ()

Exposto para teste.

Devoluções
IRunUtil

handleUserDataFlashing

protected void handleUserDataFlashing (ITestDevice device, 
                IDeviceBuildInfo deviceBuild)

Lidar com flashing de dados de usuário / partição de cache

Parâmetros
device ITestDevice : o ITestDevice a piscar

deviceBuild IDeviceBuildInfo : o IDeviceBuildInfo que contém os arquivos para o Flash

Lança
com.android.tradefed.device.DeviceNotAvailableException
TargetSetupError
DeviceNotAvailableException

hasPartition

protected boolean hasPartition (ITestDevice device, 
                String partition)

Verifica com o bootloader se a partição especificada existe ou não

Parâmetros
device ITestDevice : o ITestDevice para operar em

partition String : o nome da partição a ser verificado

Devoluções
boolean

Lança
DeviceNotAvailableException

preFlashSetup

protected void preFlashSetup (ITestDevice device, 
                IDeviceBuildInfo deviceBuild)

Execute qualquer configuração de pré-flashing adicional necessária. No-op, a menos que seja substituído.

Parâmetros
device ITestDevice : o ITestDevice para preparar

deviceBuild IDeviceBuildInfo : o IDeviceBuildInfo contendo os arquivos de compilação

Lança
com.android.tradefed.device.DeviceNotAvailableException
TargetSetupError
DeviceNotAvailableException

verifyRequiredBoards

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

Verifique se o tipo de produto do dispositivo é compatível com o build-to-be-flashed.

A implementação base irá verificar se o deviceProductType está incluído nas IFlashingResourcesParser.getRequiredBoards() cobrança. As subclasses podem ser substituídas conforme desejado.

Parâmetros
device ITestDevice : o ITestDevice a ser brilhou

resourceParser IFlashingResourcesParser : o IFlashingResourcesParser

deviceProductType String : o device do tipo de produto

Lança
TargetSetupError se as informações de placa exigidas pela construção não corresponderem ao dispositivo

limpar cache

protected void wipeCache (ITestDevice device)

Limpe a partição do cache no dispositivo.

Parâmetros
device ITestDevice : o ITestDevice a piscar

Lança
DeviceNotAvailableException se o dispositivo não estiver disponível
TargetSetupError se falhou no cache de flash

wipePartition

protected void wipePartition (ITestDevice device, 
                String partition)

Limpe a partição especificada com `fastboot erase <nome>`

Parâmetros
device ITestDevice : o ITestDevice para operar em

partition String : o nome da partição a ser limpo

Lança
DeviceNotAvailableException
TargetSetupError