CdmaDeviceFlasher

public class CdmaDeviceFlasher
extends FastbootDeviceFlasher

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


Uma classe que atualiza uma imagem em um dispositivo Android físico com um rádio CDMA.

Essa classe é necessária porque uma sequência de atualização especial é necessária para atualizar corretamente a banda de base do rádio, já que geralmente o rádio e o bootloader não podem se comunicar diretamente. Normalmente, eles usam o RIL (que é executado no espaço do usuário) como um proxy.

Resumo

Constantes

int BASEBAND_FLASH_TIMEOUT

Tempo permitido para a atualização da banda de base (no modo de recuperação), em ms

Construtores públicos

CdmaDeviceFlasher()

Métodos públicos

void flash(ITestDevice device, IDeviceBuildInfo deviceBuild)

Atualiza o build no dispositivo.

Se a banda de base estiver atualizada, esse flasher se comportará de forma idêntica à superclasse DeviceFlasher.

Métodos protegidos

File extractSystemZip(IDeviceBuildInfo deviceBuild)

Extrai o arquivo zip do atualizador para um diretório e retorna o caminho desse diretório

Exposto para testes de unidade

void flashBaseband(ITestDevice device, File basebandImageFile)

Atualiza a imagem de banda de base fornecida e não reinicializa o dispositivo depois.

void flashSystem(ITestDevice device, IDeviceBuildInfo deviceBuild)

Atualiza a imagem do sistema no dispositivo.

String getBootPartitionName()

Recebe o nome da partição de inicialização para esse flasher de dispositivo.

IRunUtil getRunUtil()

Recebe a instância RunUtil a ser usada.

Constantes

BASEBAND_FLASH_TIMEOUT

protected static final int BASEBAND_FLASH_TIMEOUT

Tempo permitido para a atualização da banda de base (no modo de recuperação), em ms

Valor constante: 600000 (0x000927c0)

Construtores públicos

CdmaDeviceFlasher

public CdmaDeviceFlasher ()

Métodos públicos

flash

public void flash (ITestDevice device, 
                IDeviceBuildInfo deviceBuild)

Atualiza o build no dispositivo.

Retorna imediatamente após a conclusão da atualização. Os autores da chamada precisam esperar que o dispositivo esteja on-line e disponível antes de prosseguir com os testes.

Se a banda de base estiver atualizada, esse flasher se comportará de forma idêntica à superclasse DeviceFlasher. Se a banda de base precisar ser atualizada, ela fará o seguinte:

  1. Atualizar o bootloader normalmente
  2. Descompactar o updater.zip
  3. Atualizar a nova banda de base, mas não reinicializar depois
  4. Atualizar as partições de inicialização, recuperação e sistema
  5. Reinicializar (o dispositivo é exibido na recuperação para atualizar a banda de base)
  6. Reinicializar novamente
  7. Atualizar os dados do usuário
  8. Reinicializar no espaço do usuário

Parâmetros
device ITestDevice: o ITestDevice a ser atualizado

deviceBuild IDeviceBuildInfo: o IDeviceBuildInfo a ser atualizado

Gera
DeviceNotAvailableException
TargetSetupError

Métodos protegidos

extractSystemZip

protected File extractSystemZip (IDeviceBuildInfo deviceBuild)

Extrai o arquivo zip do atualizador para um diretório e retorna o caminho desse diretório

Exposto para testes de unidade

Parâmetros
deviceBuild IDeviceBuildInfo

Retorna
File

Gera
IOException

flashBaseband

protected void flashBaseband (ITestDevice device, 
                File basebandImageFile)

Atualiza a imagem de banda de base fornecida e não reinicializa o dispositivo depois.

Parâmetros
device ITestDevice: o ITestDevice a ser atualizado

basebandImageFile File: a imagem de banda de base File

Gera
DeviceNotAvailableException se o dispositivo não estiver disponível
TargetSetupError se falhar ao atualizar a banda de base

flashSystem

protected void flashSystem (ITestDevice device, 
                IDeviceBuildInfo deviceBuild)

Atualiza a imagem do sistema no dispositivo.

Parâmetros
device ITestDevice: o ITestDevice a ser atualizado

deviceBuild IDeviceBuildInfo: o IDeviceBuildInfo a ser atualizado

Gera
DeviceNotAvailableException
TargetSetupError

getBootPartitionName

protected String getBootPartitionName ()

Recebe o nome da partição de inicialização para esse flasher de dispositivo.

O padrão é "bootloader". As subclasses precisam substituir, se necessário.

Retorna
String

getRunUtil

protected IRunUtil getRunUtil ()

Recebe a instância RunUtil a ser usada.

Exposto para testes de unidade.

Retorna
IRunUtil