InstallApexModuleTargetPreparer

public class InstallApexModuleTargetPreparer
extends SuiteApkInstaller

java.lang.Object
   ↳ com.android.tradefed.targetprep.BaseTargetPreparer
     ↳ com.android.tradefed.targetprep.TestAppInstallSetup
       ↳ com.android.tradefed.targetprep.suite.SuiteApkInstaller
         ↳ com.android.tradefed.targetprep.InstallApexModuleTargetPreparer


Resumen

Constantes

String APEX_OPTION

String APEX_SUFFIX

String APK_SUFFIX

String APK_ZIP_OPTION

String CHILD_SESSION_CREATION_CMD

String PARENT_SESSION_CREATION_CMD

String ROLLBACK_STATE_COMMITTED

String ROLLBACK_STATE_UNKNOWN

String SPLIT_APKS_SUFFIX

Campos

protected File mTrainFolderPath

Constructores públicos

InstallApexModuleTargetPreparer()

Métodos públicos

getModulesToInstall(TestInformation testInfo)

Obtiene los módulos que se deben instalar en el tren, según los módulos precargados en el dispositivo.

void setIgnoreIfNotPreloaded(boolean skip)
void setSkipApexTearDown(boolean skip)
void setUp(TestInformation testInfo)

void tearDown(TestInformation testInfo, Throwable e)

Métodos protegidos

void addApksToTestFiles()
void addStagedReadyTimeoutForAdb( cmd)
void addTimeoutMillisForBundletool( extraArgs)
void checkApexActivation(ITestDevice device)

Verifica si todos los ápices están activados.

collectApexInfoFromApexModules( testAppFileNames, TestInformation testInfo)

Recopila información de Apex de los módulos de Apex para la verificación de activación.

getApkInstalled()
String getBundletoolFileName()
BundletoolUtil getBundletoolUtil()
String getModuleKeywordFromApexPackageName(String packageName)

Obtiene la palabra clave (p.ej., "tzdata" para com.android.tzdata.apex) del nombre del paquete de APEX.

getModulesFailToActivate( activatedApexes)

Obtiene los módulos que no se pudieron activar.

getSplitsForApks(TestInformation testInfo, File moduleFile)

Extrae y devuelve las divisiones para los APKs especificados.

void initBundletoolUtil(TestInformation testInfo)

Inicializa la utilidad de bundletool para esta clase.

void installTrain(TestInformation testInfo, moduleFilenames)

Intenta instalar una versión principal que contenga un APEX en el dispositivo.

void installUsingBundleTool(TestInformation testInfo, testAppFileNames)

Intenta instalar módulos de la línea principal con bundletool.

void installer(TestInformation testInfo, testAppFileNames)

Intenta instalar un paquete o un paquete dividido en el dispositivo.

ITestDevice.ApexInfo retrieveApexInfo(File testApexFile, DeviceDescriptor deviceDescriptor)

Recupera ApexInfo, que contiene packageName y versionCode del archivo .apex determinado.

Constantes

APEX_OPTION

protected static final String APEX_OPTION

Valor de la constante: "--apex"

APEX_SUFFIX

protected static final String APEX_SUFFIX

Valor de la constante: ".apex"

APK_SUFFIX

protected static final String APK_SUFFIX

Valor de la constante: ".apk"

APK_ZIP_OPTION

protected static final String APK_ZIP_OPTION

Valor de la constante: "--apks-zip"

CHILD_SESSION_CREATION_CMD

protected static final String CHILD_SESSION_CREATION_CMD

Valor de la constante: "pm install-create"

PARENT_SESSION_CREATION_CMD

protected static final String PARENT_SESSION_CREATION_CMD

Valor de la constante: "pm install-create --multi-package"

ROLLBACK_STATE_COMMITTED

public static final String ROLLBACK_STATE_COMMITTED

Valor de la constante: "committed"

ROLLBACK_STATE_UNKNOWN

public static final String ROLLBACK_STATE_UNKNOWN

Valor de la constante: "unknown"

SPLIT_APKS_SUFFIX

protected static final String SPLIT_APKS_SUFFIX

Valor de la constante: ".apks"

Campos

mTrainFolderPath

protected File mTrainFolderPath

Constructores públicos

InstallApexModuleTargetPreparer

public InstallApexModuleTargetPreparer ()

Métodos públicos

getModulesToInstall

public  getModulesToInstall (TestInformation testInfo)

Obtiene los módulos que se deben instalar en el tren, según los módulos precargados en el dispositivo. No se instalarán los módulos que no estén precargados.

Parámetros
testInfo TestInformation: El TestInformation

Muestra
Lista de los módulos que se deben instalar en el dispositivo.

Arroja
DeviceNotAvailableException cuando el dispositivo no está disponible.
TargetSetupError cuando no se instalan los módulos obligatorios o no se puede instalar el módulo.

setIgnoreIfNotPreloaded

public void setIgnoreIfNotPreloaded (boolean skip)

Parámetros
skip boolean

setSkipApexTearDown

public void setSkipApexTearDown (boolean skip)

Parámetros
skip boolean

setUp

public void setUp (TestInformation testInfo)

Parámetros
testInfo TestInformation

Arroja
BuildError
DeviceNotAvailableException
TargetSetupError

tearDown

public void tearDown (TestInformation testInfo, 
                Throwable e)

Parámetros
testInfo TestInformation

e Throwable

Arroja
DeviceNotAvailableException
DeviceRuntimeException

Métodos protegidos

addApksToTestFiles

protected void addApksToTestFiles ()

addStagedReadyTimeoutForAdb

protected void addStagedReadyTimeoutForAdb ( cmd)

Parámetros
cmd

addTimeoutMillisForBundletool

protected void addTimeoutMillisForBundletool ( extraArgs)

Parámetros
extraArgs

checkApexActivation

protected void checkApexActivation (ITestDevice device)

Verifica si todos los ápices están activados.

Parámetros
device ITestDevice: En prueba

Arroja
TargetSetupError Si falló la activación
DeviceNotAvailableException

collectApexInfoFromApexModules

protected  collectApexInfoFromApexModules ( testAppFileNames, 
                TestInformation testInfo)

Recopila información de Apex de los módulos de Apex para la verificación de activación.

Parámetros
testAppFileNames : Es la lista de nombres de archivo de los módulos que se instalarán.

testInfo TestInformation: El TestInformation

Muestra
Es una lista que contiene el apexinfo de los módulos de apex en las listas de archivos de entrada.

Arroja
TargetSetupError

getApkInstalled

protected  getApkInstalled ()

Muestra

getBundletoolFileName

protected String getBundletoolFileName ()

Muestra
String

getBundletoolUtil

protected BundletoolUtil getBundletoolUtil ()

Muestra
BundletoolUtil

getModuleKeywordFromApexPackageName

protected String getModuleKeywordFromApexPackageName (String packageName)

Obtiene la palabra clave (p.ej., "tzdata" para com.android.tzdata.apex) del nombre del paquete de Apex.

Parámetros
packageName String: Es el nombre del paquete del archivo .apex.

Muestra
String Es una cadena que contiene la palabra clave del nombre del paquete de Apex.

getModulesFailToActivate

protected  getModulesFailToActivate ( activatedApexes)

Obtiene los módulos que no se pudieron activar.

Parámetros
activatedApexes : Es el conjunto de ápices activos en el dispositivo.

Muestra
Es una lista que contiene el apexinfo de los módulos de apex de entrada que no se pudieron activar.

Arroja
DeviceNotAvailableException
TargetSetupError

getSplitsForApks

protected  getSplitsForApks (TestInformation testInfo, 
                File moduleFile)

Extrae y devuelve las divisiones para los APKs especificados.

Parámetros
testInfo TestInformation: El TestInformation

moduleFile File: Es el archivo del módulo del que se extraerán las divisiones.

Muestra
Es un archivo File[] que contiene las divisiones.

Arroja
TargetSetupError Si no se encuentra bundletool o no se puede generar el archivo de especificaciones del dispositivo

initBundletoolUtil

protected void initBundletoolUtil (TestInformation testInfo)

Inicializa la utilidad de bundletool para esta clase.

Parámetros
testInfo TestInformation: Es el TestInformation de la invocación.

Arroja
TargetSetupError si no se encuentra bundletool.

installTrain

protected void installTrain (TestInformation testInfo, 
                 moduleFilenames)

Intenta instalar una versión principal que contenga un APEX en el dispositivo.

Parámetros
testInfo TestInformation: El TestInformation

moduleFilenames : Es una lista de cadenas. Es la lista de nombres de archivo de los módulos de la línea principal que se instalarán.

Arroja
DeviceNotAvailableException
TargetSetupError

installUsingBundleTool

protected void installUsingBundleTool (TestInformation testInfo, 
                 testAppFileNames)

Intenta instalar módulos de la línea principal con bundletool.

Parámetros
testInfo TestInformation: El TestInformation

testAppFileNames : Son los nombres de archivo de los módulos precargados que se instalarán.

Arroja
DeviceNotAvailableException
TargetSetupError

instalador

protected void installer (TestInformation testInfo, 
                 testAppFileNames)

Intenta instalar un paquete o un paquete dividido en el dispositivo.

Parámetros
testInfo TestInformation: Es el TestInformation de la invocación.

testAppFileNames : Son los APKs y sus paquetes que se instalarán.

Arroja
DeviceNotAvailableException
TargetSetupError

retrieveApexInfo

protected ITestDevice.ApexInfo retrieveApexInfo (File testApexFile, 
                DeviceDescriptor deviceDescriptor)

Recupera ApexInfo, que contiene packageName y versionCode del archivo .apex determinado.

Parámetros
testApexFile File: Es el archivo .apex del que recuperamos información.

deviceDescriptor DeviceDescriptor

Muestra
ITestDevice.ApexInfo Un ApexInfo que contiene packageName y versionCode del archivo determinado

Arroja
TargetSetupError Si el analizador de aapt no pudo analizar el archivo.