TestDevice

public class TestDevice
extends NativeDevice

java.lang.Object
   ↳ com.android.tradefed.device.NativeDevice
     ↳ com.android.tradefed.device.TestDevice


Implementação de um ITestDevice para um dispositivo Android de pilha completa

Resumo

Classes aninhadas

class TestDevice.MicrodroidBuilder

Um builder usado para criar um Microdroid TestDevice. 

Constantes

String DISMISS_KEYGUARD_CMD

Comandos que podem ser usados para dispensar a tela de bloqueio.

Construtores públicos

TestDevice(IDevice device, IDeviceStateMonitor stateMonitor, IDeviceMonitor allocationMonitor)

Métodos públicos

boolean canSwitchToHeadlessSystemUser()

Retorna se é permitido mudar para o usuário SYSTEM headless.

boolean clearErrorDialogs()

Tente dispensar todas as caixas de diálogo de erro exibidas na interface do dispositivo.

int createUser(String name)

Crie um usuário com um nome específico e flags padrão 0.

int createUser(String name, boolean guest, boolean ephemeral)

Crie um usuário com um nome específico e as flags fornecidas.

int createUser(String name, boolean guest, boolean ephemeral, boolean forTesting)

Crie um usuário com um nome e as flags fornecidas.

int createUserNoThrow(String name)

Crie um usuário com um nome específico e flags padrão 0.

void disableKeyguard()

Tenta desativar o keyguard.

boolean doesFileExist(String deviceFilePath, int userId)

Método auxiliar para determinar se o arquivo no dispositivo existe para um determinado usuário.

boolean doesFileExist(String deviceFilePath)

Método auxiliar para determinar se o arquivo existe no dispositivo.

File dumpHeap(String process, String devicePath)

Tente despejar o heap do system_server.

getActiveApexes()

Busca as informações sobre os APEXs ativados no dispositivo.

getAllSettings(String namespace)

Retorna pares de chave-valor do namespace solicitado.

String getAndroidId(int userId)

Encontra e retorna o android-id associado a um userId. Retorna nulo se não for encontrado.

getAndroidIds()

Crie um mapa de IDs do Android que correspondem aos IDs de usuário.

PackageInfo getAppPackageInfo(String packageName)

Busca informações sobre um pacote instalado no dispositivo.

getAppPackageInfos()

Busca informações de pacotes instalados no dispositivo.

InputStreamSource getBugreport()

Recupera um relatório do bug do dispositivo.

InputStreamSource getBugreportz()

Recupera um bugreportz do dispositivo.

DeviceFoldableState getCurrentFoldableState()

Retorna o estado dobrável atual do dispositivo ou nulo se ocorrerem problemas.

int getCurrentUser()

Retorna o ID do usuário em execução no momento.

getFoldableStates()

Retorna a lista de estados dobráveis no dispositivo.

getInstalledPackageNames()

Busca os nomes de pacotes de aplicativos presentes no dispositivo.

KeyguardControllerState getKeyguardState()

Retorne um objeto para receber o estado atual do keyguard ou null se não for compatível.

Integer getMainUserId()

Retorna o ID do usuário principal.

getMainlineModuleInfo()

Receba informações sobre os módulos principais instalados no dispositivo.

int getMaxNumberOfRunningUsersSupported()

Recebe o número máximo de usuários que podem ser executados simultaneamente.

int getMaxNumberOfUsersSupported()

Recebe o número máximo de usuários aceitos.

Integer getPrimaryUserId()

Retorna o ID do usuário principal.

InputStreamSource getScreenshot(String format, boolean rescale)

Captura uma captura de tela do dispositivo.

InputStreamSource getScreenshot(long displayId)

Faz uma captura de tela do dispositivo com o ID de exibição especificado.

InputStreamSource getScreenshot(String format)

Faz uma captura de tela do dispositivo.

InputStreamSource getScreenshot()

Faz uma captura de tela do dispositivo.

String getSetting(int userId, String namespace, String key)

Retorna o valor da configuração solicitada.

String getSetting(String namespace, String key)

Consulte getSetting(int, String, String) e executado no usuário do sistema.

getUninstallablePackageNames()

Extraia os nomes de pacotes de aplicativos que podem ser desinstalados.

int getUserFlags(int userId)

Encontra e retorna as flags de um determinado usuário.

getUserInfos()

Recebe o mapa de useId para UserInfo no dispositivo.

int getUserSerialNumber(int userId)

Retorna o número de série associado ao userId se encontrado, -10000 em qualquer outro caso.

boolean hasFeature(String feature)

Verifica se um recurso está disponível em um dispositivo.

String installPackage(File packageFile, boolean reinstall, String... extraArgs)

Instala um pacote Android no dispositivo.

String installPackage(File packageFile, File certFile, boolean reinstall, String... extraArgs)

Instala um pacote Android no dispositivo.

String installPackage(File packageFile, boolean reinstall, boolean grantPermissions, String... extraArgs)

Instala um pacote Android no dispositivo.

String installPackageForUser(File packageFile, boolean reinstall, int userId, String... extraArgs)

Instala um pacote Android no dispositivo para um determinado usuário.

String installPackageForUser(File packageFile, boolean reinstall, boolean grantPermissions, int userId, String... extraArgs)

Instala um pacote Android no dispositivo para um determinado usuário.

boolean installPackageWithIncrementalMode(File[] apkFiles, String[] extraArgs, String userId)

Instala APKs com modo incremental.

String installPackages( packageFiles, boolean reinstall, String... extraArgs)

String installPackages( packageFiles, boolean reinstall, boolean grantPermissions, String... extraArgs)

String installPackagesForUser( packageFiles, boolean reinstall, int userId, String... extraArgs)

String installPackagesForUser( packageFiles, boolean reinstall, boolean grantPermissions, int userId, String... extraArgs)

String installRemotePackages( remoteApkPaths, boolean reinstall, String... extraArgs)

String installRemotePackages( remoteApkPaths, boolean reinstall, boolean grantPermissions, String... extraArgs)

boolean isAppEnumerationSupported()

Verificar se a plataforma no dispositivo é compatível com a enumeração de apps

boolean isHeadlessSystemUserMode()

Retorna se o dispositivo usa o modo de usuário do sistema headless.

boolean isMainUserPermanentAdmin()

Retorna se o usuário principal é um administrador permanente e não pode ser excluído ou rebaixado para o status de não administrador.

boolean isMultiUserSupported()

Determina se vários usuários são aceitos.

boolean isPackageInstalled(String packageName, String userId)

Consulte o dispositivo para um determinado nome de pacote e ID de usuário para verificar se ele está instalado ou não para esse usuário.

boolean isPackageInstalled(String packageName)

Consulte o dispositivo para um determinado nome de pacote e verifique se ele está instalado ou não.

boolean isUserRunning(int userId)

Verifica se um determinado usuário está em execução.

boolean isUserSecondary(int userId)

Retorna se o usuário especificado é secundário de acordo com as flags dele.

boolean isUserVisible(int userId)

Verifica se o usuário especificado está visível.

boolean isUserVisibleOnDisplay(int userId, int displayId)

Verifica se o usuário especificado está visível na tela especificada.

boolean isVisibleBackgroundUsersOnDefaultDisplaySupported()

Retorna se o dispositivo permite que os usuários sejam iniciados visíveis em segundo plano no ERROR(/java.android.view.Display#DEFAULT_DISPLAY).

boolean isVisibleBackgroundUsersSupported()

Retorna se o dispositivo permite que os usuários sejam iniciados visíveis em segundo plano.

listDisplayIds()

Colete a lista de IDs de telas disponíveis no dispositivo, conforme informado por "dumpsys SurfaceFlinger".

listDisplayIdsForStartingVisibleBackgroundUsers()

Recebe a lista de telas que podem ser usadas para start a user visible in the background.

listUsers()

Recebe a lista de usuários no dispositivo.

boolean logBugreport(String dataName, ITestLogger listener)

Método auxiliar para criar um relatório de bug e registrá-lo para os repórteres.

void notifySnapuserd(SnapuserdWaitPhase waitPhase)
void postInvocationTearDown(Throwable exception)

Etapas extras para limpeza obrigatória específica do dispositivo que será executada após a conclusão da invocação.

boolean removeAdmin(String componentName, int userId)

Remova o administrador de dispositivo do usuário especificado e retorne true se a operação for bem-sucedida ou false caso contrário.

void removeOwners()

Remova todos os proprietários de perfis de dispositivos atuais com o melhor esforço.

boolean removeUser(int userId)

Remova um usuário específico do dispositivo.

boolean setDeviceOwner(String componentName, int userId)

Defina um componente de administrador do dispositivo como proprietário do dispositivo para um determinado usuário.

void setFirstBootloaderReboot()
void setSetting(String namespace, String key, String value)

Consulte setSetting(int, String, String, String) e realizado no usuário do sistema.

void setSetting(int userId, String namespace, String key, String value)

Adiciona um valor de configuração ao namespace de um determinado usuário.

void shutdownMicrodroid(ITestDevice microdroidDevice)

Desliga o dispositivo microdroid, se houver um.

boolean startUser(int userId)

Inicia um determinado usuário em segundo plano se ele estiver parado.

boolean startUser(int userId, boolean waitFlag)

Inicia um determinado usuário em segundo plano se ele estiver parado.

boolean startVisibleBackgroundUser(int userId, int displayId, boolean waitFlag)

Inicia um determinado usuário em segundo plano, visível na tela especificada (ou seja, permitindo que o usuário inicie atividades nessa tela).

boolean stopUser(int userId)

Interrompe um determinado usuário.

boolean stopUser(int userId, boolean waitFlag, boolean forceFlag)

Interrompe um determinado usuário.

boolean supportsMicrodroid()

Verifica as condições prévias para executar um microdroid.

boolean supportsMicrodroid(boolean protectedVm)

Verifica as condições prévias para executar um microdroid.

boolean switchUser(int userId)

Mude para outro userId com um tempo limite padrão.

boolean switchUser(int userId, long timeout)

Mude para outro userId com o tempo limite fornecido como prazo.

Bugreport takeBugreport()

Recebe um bugreport e o retorna em um objeto Bugreport para processamento.

String uninstallPackage(String packageName)

Desinstala um pacote Android do dispositivo.

String uninstallPackageForUser(String packageName, int userId)

Desinstala um pacote Android do dispositivo para um determinado usuário.

void waitForSnapuserd(SnapuserdWaitPhase currentPhase)

Métodos protegidos

AaptParser createParser(File appFile)
void doAdbReboot(NativeDevice.RebootMode rebootMode, String reason)

Faça uma reinicialização do adb.

InputStreamSource getBugreportInternal()
File getBugreportzInternal()

Método auxiliar interno para receber o arquivo ZIP bugreportz como um ERROR(/File).

long getCheckNewUserSleep()

Exposto para testes.

long getHostCurrentTime()

Exposto para testes

void prePostBootSetup()

Permite que cada tipo de dispositivo (AndroidNativeDevice, TestDevice) substitua esse método para configuração específica após a inicialização.

Constantes

DISMISS_KEYGUARD_CMD

public static final String DISMISS_KEYGUARD_CMD

Comandos que podem ser usados para dispensar a tela de bloqueio.

Valor da constante: "input keyevent 82"

Construtores públicos

TestDevice

public TestDevice (IDevice device, 
                IDeviceStateMonitor stateMonitor, 
                IDeviceMonitor allocationMonitor)

Métodos públicos

canSwitchToHeadlessSystemUser

public boolean canSwitchToHeadlessSystemUser ()

Retorna se é permitido mudar para o usuário SYSTEM headless.

Retorna
boolean

Gera
DeviceNotAvailableException

clearErrorDialogs

public boolean clearErrorDialogs ()

Tente dispensar todas as caixas de diálogo de erro exibidas na interface do dispositivo.

Retorna
boolean true se não houver caixas de diálogo ou se elas forem limpas. false se não forem.

Gera
DeviceNotAvailableException

createUser

public int createUser (String name)

Crie um usuário com um nome específico e flags padrão 0.

Parâmetros
name String: do usuário a ser criado no dispositivo

Retorna
int o número inteiro do ID do usuário criado

Gera
DeviceNotAvailableException

createUser

public int createUser (String name, 
                boolean guest, 
                boolean ephemeral)

Crie um usuário com um nome e as flags fornecidas.

Parâmetros
name String: do usuário a ser criado no dispositivo

guest boolean: ative a flag do usuário --guest durante a criação

ephemeral boolean: ative a flag do usuário --ephemeral durante a criação

Retorna
int ID do usuário criado.

Gera
DeviceNotAvailableException

createUser

public int createUser (String name, 
                boolean guest, 
                boolean ephemeral, 
                boolean forTesting)

Crie um usuário com um nome e as flags fornecidas.

Parâmetros
name String: do usuário a ser criado no dispositivo

guest boolean: ative a flag do usuário --guest durante a criação

ephemeral boolean: ative a flag do usuário --ephemeral durante a criação

forTesting boolean: ative a flag de teste --for-testing durante a criação

Retorna
int ID do usuário criado.

Gera
DeviceNotAvailableException

createUserNoThrow

public int createUserNoThrow (String name)

Crie um usuário com um nome específico e flags padrão 0.

Parâmetros
name String: do usuário a ser criado no dispositivo

Retorna
int o número inteiro do ID do usuário criado ou -1 em caso de erro.

Gera
DeviceNotAvailableException

disableKeyguard

public void disableKeyguard ()

Tenta desativar o keyguard.

Primeiro, aguarde a preparação do envio de entrada. Isso acontece aproximadamente ao mesmo tempo em que o dispositivo informa BOOT_COMPLETE, aparentemente de forma assíncrona, porque a implementação atual do framework tem uma condição de corrida ocasional. Em seguida, o comando é enviado para dispensar o keyguard (funciona apenas em dispositivos não seguros)

Gera
DeviceNotAvailableException

doesFileExist

public boolean doesFileExist (String deviceFilePath, 
                int userId)

Método auxiliar para determinar se o arquivo no dispositivo existe para um determinado usuário.

Parâmetros
deviceFilePath String: o caminho absoluto do arquivo no dispositivo a ser verificado

userId int: o ID do usuário em relação ao qual a existência do arquivo será verificada

Retorna
boolean true se o arquivo existir, false caso contrário.

Gera
DeviceNotAvailableException

doesFileExist

public boolean doesFileExist (String deviceFilePath)

Método auxiliar para determinar se o arquivo existe no dispositivo.

Parâmetros
deviceFilePath String: o caminho absoluto do arquivo no dispositivo a ser verificado

Retorna
boolean true se o arquivo existir, false caso contrário.

Gera
DeviceNotAvailableException

dumpHeap

public File dumpHeap (String process, 
                String devicePath)

Tente despejar o heap do system_server. É responsabilidade do chamador limpar o arquivo despejado.

Parâmetros
process String: o nome do processo do dispositivo em que o dumpheap será executado.

devicePath String: o caminho no dispositivo onde colocar o despejo. Esse precisa ser um local em que as permissões permitem isso.

Retorna
File o ERROR(/File) que contém o relatório. Nulo se algo falhar.

Gera
DeviceNotAvailableException

getActiveApexes

public  getActiveApexes ()

Busca as informações sobre os APEXs ativados no dispositivo.

Retorna
ERROR(/Set) de ApexInfo ativados no dispositivo

Gera
DeviceNotAvailableException

getAllSettings

public  getAllSettings (String namespace)

Retorna pares de chave-valor do namespace solicitado.

Parâmetros
namespace String: precisa ser um dos valores {"system", "secure", "global"}

Retorna
o mapa de pares de chave-valor. Nulo se o namespace não for compatível.

Gera
DeviceNotAvailableException

getAndroidId

public String getAndroidId (int userId)

Encontra e retorna o android-id associado a um userId. Retorna nulo se não for encontrado.

Parâmetros
userId int

Retorna
String

Gera
DeviceNotAvailableException

getAndroidIds

public  getAndroidIds ()

Crie um mapa de IDs do Android que correspondem aos IDs de usuário. Não há garantia de que cada ID de usuário vai encontrar um ID do Android associado a essa função. Portanto, alguns IDs de usuário podem corresponder a "null".

Retorna
Mapa de IDs do Android encontrados que correspondem a IDs de usuário.

Gera
DeviceNotAvailableException

getAppPackageInfo

public PackageInfo getAppPackageInfo (String packageName)

Busca informações sobre um pacote instalado no dispositivo.

Parâmetros
packageName String

Retorna
PackageInfo o PackageInfo ou null se não for possível recuperar as informações

Gera
DeviceNotAvailableException

getAppPackageInfos

public  getAppPackageInfos ()

Busca informações de pacotes instalados no dispositivo.

Retorna
ERROR(/List) de PackageInfos instalados no dispositivo.

Gera
DeviceNotAvailableException

getBugreport

public InputStreamSource getBugreport ()

Recupera um relatório do bug do dispositivo.

A implementação disso tem garantia de continuar funcionando em um dispositivo sem um cartão SD (ou em que o cartão SD ainda não está montado).

Retorna
InputStreamSource Um InputStreamSource que vai produzir o conteúdo do bugreport on demand. Em caso de falha, o InputStreamSource vai produzir um ERROR(/InputStream) vazio.

getBugreportz

public InputStreamSource getBugreportz ()

Recupera um bugreportz do dispositivo. O relatório de bug no formato ZIP contém o relatório principal e outros arquivos de registro úteis para depuração.

Compatível apenas com "adb version" > 1.0.36

Retorna
InputStreamSource um InputStreamSource do arquivo ZIP que contém o bugreportz. Retorne nulo em caso de falha.

getCurrentFoldableState

public DeviceFoldableState getCurrentFoldableState ()

Retorna o estado dobrável atual do dispositivo ou nulo se ocorrerem problemas.

Retorna
DeviceFoldableState

Gera
DeviceNotAvailableException

getCurrentUser

public int getCurrentUser ()

Retorna o ID do usuário em execução no momento. Em caso de erro, retorne -10000.

Retorna
int

Gera
DeviceNotAvailableException

getFoldableStates

public  getFoldableStates ()

Retorna a lista de estados dobráveis no dispositivo. Pode ser obtido com "cmd device_state print-states".

Retorna

Gera
DeviceNotAvailableException

getInstalledPackageNames

public  getInstalledPackageNames ()

Busca os nomes de pacotes de aplicativos presentes no dispositivo.

Retorna
ERROR(/Set) de String nomes de pacotes instalados no dispositivo.

Gera
DeviceNotAvailableException

getKeyguardState

public KeyguardControllerState getKeyguardState ()

Retorna um objeto para receber o estado atual do keyguard ou um valor nulo se não houver suporte.

Retorna
KeyguardControllerState um KeyguardControllerState que contém um snapshot do estado do keyguard e retorna Null se a consulta do Keyguard não for compatível.

Gera
DeviceNotAvailableException

getMainUserId

public Integer getMainUserId ()

Retorna o ID do usuário principal.

Retorna
Integer o userId do usuário principal, se houver um, e nulo se não houver um usuário principal.

Gera
DeviceNotAvailableException

getMainlineModuleInfo

public  getMainlineModuleInfo ()

Receba informações sobre os módulos principais instalados no dispositivo.

Retorna
ERROR(/Set) dos String módulos principais instalados no dispositivo.

Gera
DeviceNotAvailableException

getMaxNumberOfRunningUsersSupported

public int getMaxNumberOfRunningUsersSupported ()

Recebe o número máximo de usuários que podem ser executados simultaneamente. O valor padrão é 0.

Retorna
int um número inteiro que indica o número de usuários em execução simultânea

Gera
DeviceNotAvailableException

getMaxNumberOfUsersSupported

public int getMaxNumberOfUsersSupported ()

Recebe o número máximo de usuários aceitos. O valor padrão é 0.

Retorna
int um número inteiro que indica o número de usuários aceitos

Gera
DeviceNotAvailableException

getPrimaryUserId

public Integer getPrimaryUserId ()

Retorna o ID do usuário principal.

Retorna
Integer o userId do usuário principal, se houver, e nulo se não houver um usuário principal.

Gera
DeviceNotAvailableException

getScreenshot

public InputStreamSource getScreenshot (String format, 
                boolean rescale)

Faz uma captura de tela do dispositivo. Recomendamos usar getScreenshot(String) com codificação JPEG para um tamanho menor.

Parâmetros
format String: PNG e JPEG compatíveis

rescale boolean: se a captura de tela precisa ser redimensionada para reduzir o tamanho da imagem resultante.

Retorna
InputStreamSource um InputStreamSource da captura de tela no formato ou null se a captura de tela não foi concluída.

Gera
DeviceNotAvailableException

getScreenshot

public InputStreamSource getScreenshot (long displayId)

Faz uma captura de tela do dispositivo com o ID de exibição especificado. O formato é PNG.

TODO: estender as implementações acima para oferecer suporte a "format" e "rescale"

Parâmetros
displayId long: o ID de exibição da tela para capturar a captura de tela.

Retorna
InputStreamSource um InputStreamSource da captura de tela no formato ou null se a captura de tela não foi concluída.

Gera
DeviceNotAvailableException

getScreenshot

public InputStreamSource getScreenshot (String format)

Captura uma captura de tela do dispositivo. Recomendado usar getScreenshot(format) com codificação JPEG para um tamanho menor

Parâmetros
format String: PNG e JPEG compatíveis

Retorna
InputStreamSource um InputStreamSource da captura de tela no formato ou null se a captura de tela não foi concluída.

Gera
DeviceNotAvailableException

getScreenshot

public InputStreamSource getScreenshot ()

Faz uma captura de tela do dispositivo.

Retorna
InputStreamSource um InputStreamSource da captura de tela no formato png ou null se a captura de tela não foi concluída.

Gera
DeviceNotAvailableException

getSetting

public String getSetting (int userId, 
                String namespace, 
                String key)

Retorna o valor da configuração solicitada. O namespace precisa ser um destes: {"system", "secure", "global"}

Parâmetros
userId int

namespace String

key String

Retorna
String o valor associado ao namespace:chave de um usuário. Nulo se não for encontrado.

Gera
DeviceNotAvailableException

getSetting

public String getSetting (String namespace, 
                String key)

Consulte getSetting(int, String, String) e executado no usuário do sistema.

Parâmetros
namespace String

key String

Retorna
String

Gera
DeviceNotAvailableException

getUninstallablePackageNames

public  getUninstallablePackageNames ()

Extraia os nomes de pacotes de aplicativos que podem ser desinstalados. Atualmente, isso é definido como pacotes que não são do sistema e pacotes atualizados do sistema.

Retorna
ERROR(/Set) de nomes de pacotes String não desinstaláveis instalados no dispositivo.

Gera
DeviceNotAvailableException

getUserFlags

public int getUserFlags (int userId)

Encontra e retorna as flags de um determinado usuário. As flags são definidas na classe "android.content.pm.UserInfo" no Android Open Source Project.

Parâmetros
userId int

Retorna
int as flags associadas ao userId fornecido, se encontradas, -10000 em qualquer outro caso.

Gera
DeviceNotAvailableException

getUserInfos

public  getUserInfos ()

Recebe o mapa de useId para UserInfo no dispositivo. Vai gerar DeviceRuntimeException se a saída do dispositivo não for a esperada.

Retorna
a lista de objetos UserInfo.

Gera
DeviceNotAvailableException

getUserSerialNumber

public int getUserSerialNumber (int userId)

Retorna o número de série associado ao userId se encontrado, -10000 em qualquer outro caso.

Parâmetros
userId int

Retorna
int

Gera
DeviceNotAvailableException

hasFeature

public boolean hasFeature (String feature)

Verifica se um recurso está disponível em um dispositivo.

Parâmetros
feature String: qual formato deve ser "feature:" ou "" diretamente.

Retorna
boolean True se o recurso for encontrado. Caso contrário, será false.

Gera
DeviceNotAvailableException

installPackage

public String installPackage (File packageFile, 
                boolean reinstall, 
                String... extraArgs)

Instala um pacote Android no dispositivo.

Parâmetros
packageFile File: o arquivo APK a ser instalado

reinstall boolean: true se uma reinstalação precisar ser feita.

extraArgs String: argumentos extras opcionais a serem transmitidos. Consulte "adb shell pm -h" para ver as opções disponíveis.

Retorna
String um String com um código de erro ou null se a operação for concluída corretamente.

Gera
DeviceNotAvailableException

installPackage

public String installPackage (File packageFile, 
                File certFile, 
                boolean reinstall, 
                String... extraArgs)

Instala um pacote Android no dispositivo.

Observação: só os casos de uso que exigem controle explícito da concessão de permissão de execução no momento da instalação devem chamar essa função.

Parâmetros
packageFile File: o arquivo APK a ser instalado

certFile File: true se uma reinstalação precisar ser feita.

reinstall boolean: se todas as permissões de ambiente de execução devem ser concedidas no momento da instalação.

extraArgs String: argumentos extras opcionais a serem transmitidos. Consulte "adb shell pm -h" para ver as opções disponíveis.

Retorna
String um String com um código de erro ou null se a operação for concluída corretamente.

Gera
DeviceNotAvailableException

installPackage

public String installPackage (File packageFile, 
                boolean reinstall, 
                boolean grantPermissions, 
                String... extraArgs)

Instala um pacote Android no dispositivo.

Observação: só os casos de uso que exigem controle explícito da concessão de permissão de execução no momento da instalação devem chamar essa função.

Parâmetros
packageFile File: o arquivo APK a ser instalado

reinstall boolean: true se uma reinstalação precisar ser feita.

grantPermissions boolean: se todas as permissões de ambiente de execução devem ser concedidas no momento da instalação.

extraArgs String: argumentos extras opcionais a serem transmitidos. Consulte "adb shell pm -h" para ver as opções disponíveis.

Retorna
String um String com um código de erro ou null se a operação for concluída corretamente.

Gera
DeviceNotAvailableException

installPackageForUser

public String installPackageForUser (File packageFile, 
                boolean reinstall, 
                int userId, 
                String... extraArgs)

Instala um pacote Android no dispositivo para um determinado usuário.

Parâmetros
packageFile File: o arquivo APK a ser instalado

reinstall boolean: true se uma reinstalação precisar ser feita.

userId int: o ID de usuário inteiro para instalar.

extraArgs String: argumentos extras opcionais a serem transmitidos. Consulte "adb shell pm -h" para ver as opções disponíveis.

Retorna
String um String com um código de erro ou null se a operação for concluída corretamente.

Gera
DeviceNotAvailableException

installPackageForUser

public String installPackageForUser (File packageFile, 
                boolean reinstall, 
                boolean grantPermissions, 
                int userId, 
                String... extraArgs)

Instala um pacote Android no dispositivo para um determinado usuário.

Observação: só os casos de uso que exigem controle explícito da concessão de permissão de execução no momento da instalação devem chamar essa função.

Parâmetros
packageFile File: o arquivo APK a ser instalado

reinstall boolean: true se uma reinstalação precisar ser feita.

grantPermissions boolean: se todas as permissões de ambiente de execução devem ser concedidas no momento da instalação.

userId int: o ID de usuário inteiro para instalar.

extraArgs String: argumentos extras opcionais a serem transmitidos. Consulte "adb shell pm -h" para ver as opções disponíveis.

Retorna
String um String com um código de erro ou null se a operação for concluída corretamente.

Gera
DeviceNotAvailableException

installPackageWithIncrementalMode

public boolean installPackageWithIncrementalMode (File[] apkFiles, 
                String[] extraArgs, 
                String userId)

Instala APKs com modo incremental.

Parâmetros
apkFiles File: os arquivos APK a serem instalados.

extraArgs String

userId String

Retorna
boolean

Gera
DeviceNotAvailableException

installPackages

public String installPackages ( packageFiles, 
                boolean reinstall, 
                String... extraArgs)

Parâmetros
packageFiles

reinstall boolean

extraArgs String

Retorna
String

Gera
DeviceNotAvailableException

installPackages

public String installPackages ( packageFiles, 
                boolean reinstall, 
                boolean grantPermissions, 
                String... extraArgs)

Parâmetros
packageFiles

reinstall boolean

grantPermissions boolean

extraArgs String

Retorna
String

Gera
DeviceNotAvailableException

installPackagesForUser

public String installPackagesForUser ( packageFiles, 
                boolean reinstall, 
                int userId, 
                String... extraArgs)

Parâmetros
packageFiles

reinstall boolean

userId int

extraArgs String

Retorna
String

Gera
DeviceNotAvailableException

installPackagesForUser

public String installPackagesForUser ( packageFiles, 
                boolean reinstall, 
                boolean grantPermissions, 
                int userId, 
                String... extraArgs)

Parâmetros
packageFiles

reinstall boolean

grantPermissions boolean

userId int

extraArgs String

Retorna
String

Gera
DeviceNotAvailableException

installRemotePackages

public String installRemotePackages ( remoteApkPaths, 
                boolean reinstall, 
                String... extraArgs)

Parâmetros
remoteApkPaths

reinstall boolean

extraArgs String

Retorna
String

Gera
DeviceNotAvailableException

installRemotePackages

public String installRemotePackages ( remoteApkPaths, 
                boolean reinstall, 
                boolean grantPermissions, 
                String... extraArgs)

Parâmetros
remoteApkPaths

reinstall boolean

grantPermissions boolean

extraArgs String

Retorna
String

Gera
DeviceNotAvailableException

isAppEnumerationSupported

public boolean isAppEnumerationSupported ()

Verificar se a plataforma no dispositivo é compatível com a enumeração de apps

Retorna
boolean True se a enumeração de apps for compatível. Caso contrário, false.

Gera
DeviceNotAvailableException

isHeadlessSystemUserMode

public boolean isHeadlessSystemUserMode ()

Retorna se o dispositivo usa o modo de usuário do sistema headless.

Retorna
boolean

Gera
DeviceNotAvailableException

isMainUserPermanentAdmin

public boolean isMainUserPermanentAdmin ()

Retorna se o usuário principal é um administrador permanente e não pode ser excluído ou rebaixado para o status de não administrador.

Retorna
boolean

Gera
DeviceNotAvailableException

isMultiUserSupported

public boolean isMultiUserSupported ()

Determina se vários usuários são aceitos.

Retorna
boolean true se o recurso multiusuário for compatível, false caso contrário

Gera
DeviceNotAvailableException

isPackageInstalled

public boolean isPackageInstalled (String packageName, 
                String userId)

Consulte o dispositivo para um determinado nome de pacote e ID de usuário para verificar se ele está instalado ou não para esse usuário.

Parâmetros
packageName String: o pacote que estamos verificando se está instalado.

userId String: o ID do usuário para quem estamos verificando se o pacote está instalado. Se for nulo, o usuário principal zero será usado.

Retorna
boolean Verdadeiro se o pacote for informado como instalado. Caso contrário, retorna "falso".

Gera
DeviceNotAvailableException

isPackageInstalled

public boolean isPackageInstalled (String packageName)

Consulte o dispositivo para um determinado nome de pacote e verifique se ele está instalado ou não.

Parâmetros
packageName String

Retorna
boolean Verdadeiro se o pacote for informado como instalado. Caso contrário, retorna "falso".

Gera
DeviceNotAvailableException

isUserRunning

public boolean isUserRunning (int userId)

Verifica se um determinado usuário está em execução.

Parâmetros
userId int

Retorna
boolean True se o usuário estiver executando, false em todos os outros casos.

Gera
DeviceNotAvailableException

isUserSecondary

public boolean isUserSecondary (int userId)

Retorna se o usuário especificado é secundário de acordo com as flags dele.

Parâmetros
userId int

Retorna
boolean "true" se o usuário for secundário. Caso contrário, "false".

Gera
DeviceNotAvailableException

isUserVisible

public boolean isUserVisible (int userId)

Verifica se o usuário especificado está visível.

Um usuário "visível" é aquele que está interagindo com o usuário "humano" e, portanto, pode iniciar atividades de inicialização (normalmente na tela padrão).

Parâmetros
userId int

Retorna
boolean

Gera
DeviceNotAvailableException

isUserVisibleOnDisplay

public boolean isUserVisibleOnDisplay (int userId, 
                int displayId)

Verifica se o usuário especificado está visível na tela especificada.

Um usuário "visível" é aquele que está interagindo com o usuário "humano" e, portanto, pode iniciar atividades de inicialização na tela.

Parâmetros
userId int

displayId int

Retorna
boolean

Gera
DeviceNotAvailableException

isVisibleBackgroundUsersOnDefaultDisplaySupported

public boolean isVisibleBackgroundUsersOnDefaultDisplaySupported ()

Retorna se o dispositivo permite que os usuários sejam iniciados visíveis em segundo plano no ERROR(/java.android.view.Display#DEFAULT_DISPLAY).

Se for o caso, chame startVisibleBackgroundUser(int, int, boolean), transmitindo uma exibição retornada por listDisplayIdsForStartingVisibleBackgroundUsers() (que deve incluir ERROR(/java.android.view.Display#DEFAULT_DISPLAY)).

Retorna
boolean

Gera
DeviceNotAvailableException

isVisibleBackgroundUsersSupported

public boolean isVisibleBackgroundUsersSupported ()

Retorna se o dispositivo permite que os usuários sejam iniciados visíveis em segundo plano.

Se isso acontecer, chame startVisibleBackgroundUser(int, int, boolean), transmitindo uma exibição retornada por listDisplayIdsForStartingVisibleBackgroundUsers().

Retorna
boolean

Gera
DeviceNotAvailableException

listDisplayIds

public  listDisplayIds ()

Colete a lista de IDs de telas disponíveis no dispositivo, conforme informado por "dumpsys SurfaceFlinger".

Retorna
A lista de telas. O padrão sempre retorna a tela padrão 0.

Gera
DeviceNotAvailableException

listDisplayIdsForStartingVisibleBackgroundUsers

public  listDisplayIdsForStartingVisibleBackgroundUsers ()

Recebe a lista de telas que podem ser usadas para start a user visible in the background.

Retorna

Gera
DeviceNotAvailableException

listUsers

public  listUsers ()

Recebe a lista de usuários no dispositivo. Vai gerar DeviceRuntimeException se a saída do dispositivo não for a esperada.

Retorna
a lista de IDs de usuário.

Gera
DeviceNotAvailableException

logBugreport

public boolean logBugreport (String dataName, 
                ITestLogger listener)

Método auxiliar para criar um relatório de bug e registrá-lo para os repórteres.

Parâmetros
dataName String: nome em que o relatório de bug será informado.

listener ITestLogger: um ITestLogger para registrar o bugreport.

Retorna
boolean True se o registro for bem-sucedido. Caso contrário, false.

notifySnapuserd

public void notifySnapuserd (SnapuserdWaitPhase waitPhase)

Parâmetros
waitPhase SnapuserdWaitPhase

postInvocationTearDown

public void postInvocationTearDown (Throwable exception)

Etapas extras para limpeza obrigatória específica do dispositivo que será executada após a conclusão da invocação.

Parâmetros
exception Throwable: se houver, a exceção final gerada pela falha na invocação.

removeAdmin

public boolean removeAdmin (String componentName, 
                int userId)

Remova o administrador de dispositivo do usuário especificado e retorne true se a operação for bem-sucedida ou false caso contrário.

Parâmetros
componentName String: do administrador do dispositivo a ser removido.

userId int: do usuário em que o administrador do dispositivo está.

Retorna
boolean True se for bem-sucedido. Caso contrário, false.

Gera
DeviceNotAvailableException

removeOwners

public void removeOwners ()

Remova todos os proprietários de perfis de dispositivos atuais com o melhor esforço.

Gera
DeviceNotAvailableException

removeUser

public boolean removeUser (int userId)

Remova um usuário específico do dispositivo.

Parâmetros
userId int: do usuário a ser removido

Retorna
boolean "true" se a remoção do usuário for bem-sucedida. Caso contrário, "false".

Gera
DeviceNotAvailableException

setDeviceOwner

public boolean setDeviceOwner (String componentName, 
                int userId)

Defina um componente de administrador do dispositivo como proprietário do dispositivo para um determinado usuário.

Parâmetros
componentName String: de administrador do dispositivo para proprietário do dispositivo.

userId int: do usuário em que o proprietário do dispositivo mora.

Retorna
boolean True se for bem-sucedido. Caso contrário, false.

Gera
DeviceNotAvailableException

setFirstBootloaderReboot

public void setFirstBootloaderReboot ()

setSetting

public void setSetting (String namespace, 
                String key, 
                String value)

Consulte setSetting(int, String, String, String) e executado no usuário do sistema.

Parâmetros
namespace String

key String

value String

Gera
DeviceNotAvailableException

setSetting

public void setSetting (int userId, 
                String namespace, 
                String key, 
                String value)

Adiciona um valor de configuração ao namespace de um determinado usuário. Algumas configurações só vão estar disponíveis após uma reinicialização. O namespace precisa ser um destes: {"system", "secure", "global"}

Parâmetros
userId int

namespace String

key String

value String

Gera
DeviceNotAvailableException

shutdownMicrodroid

public void shutdownMicrodroid (ITestDevice microdroidDevice)

Desliga o dispositivo microdroid, se houver um.

Parâmetros
microdroidDevice ITestDevice

Gera
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

startUser

public boolean startUser (int userId)

Inicia um determinado usuário em segundo plano se ele estiver parado. Se o usuário já estiver em execução em segundo plano, esse método será uma NOOP.

Parâmetros
userId int: do usuário para iniciar em segundo plano

Retorna
boolean verdadeiro se o usuário foi iniciado em segundo plano.

Gera
DeviceNotAvailableException

startUser

public boolean startUser (int userId, 
                boolean waitFlag)

Inicia um determinado usuário em segundo plano se ele estiver parado. Se o usuário já estiver em execução em segundo plano, esse método será uma NOOP. É possível fornecer uma flag extra para aguardar o efeito da operação.

Parâmetros
userId int: do usuário para iniciar em segundo plano

waitFlag boolean: faz com que o comando aguarde até que o usuário seja iniciado e desbloqueado.

Retorna
boolean verdadeiro se o usuário foi iniciado em segundo plano.

Gera
DeviceNotAvailableException

startVisibleBackgroundUser

public boolean startVisibleBackgroundUser (int userId, 
                int displayId, 
                boolean waitFlag)

Inicia um determinado usuário em segundo plano, visível na tela especificada (ou seja, permitindo que o usuário inicie atividades nessa tela).

OBSERVAÇÃO : esse comando não verifica se o usuário existe, se a exibição está disponível, se é device supports such feature etc.

Parâmetros
userId int: do usuário para iniciar em segundo plano

displayId int: tela para iniciar o usuário visível em

waitFlag boolean: faz com que o comando aguarde até que o usuário seja iniciado e desbloqueado.

Retorna
boolean true se o usuário tiver sido iniciado com sucesso em segundo plano.

Gera
DeviceNotAvailableException

stopUser

public boolean stopUser (int userId)

Interrompe um determinado usuário. Se o usuário já estiver parado, esse método será uma NOOP. Não é possível interromper o usuário atual e do sistema.

Parâmetros
userId int: do usuário a ser interrompido.

Retorna
boolean true se o usuário foi interrompido.

Gera
DeviceNotAvailableException

stopUser

public boolean stopUser (int userId, 
                boolean waitFlag, 
                boolean forceFlag)

Interrompe um determinado usuário. É possível fornecer flags extras para aguardar o efeito da operação e encerrar o usuário à força. Não é possível interromper o usuário atual e do sistema.

Parâmetros
userId int: do usuário a ser interrompido.

waitFlag boolean: faz com que o comando aguarde até que o usuário seja interrompido.

forceFlag boolean: vai forçar a interrupção do usuário.

Retorna
boolean true se o usuário foi interrompido.

Gera
DeviceNotAvailableException

supportsMicrodroid

public boolean supportsMicrodroid ()

Verifica as condições prévias para executar um microdroid.

Retorna
boolean Retorna "true" se as pré-condições forem atendidas. Caso contrário, retorna "false".

supportsMicrodroid

public boolean supportsMicrodroid (boolean protectedVm)

Verifica as condições prévias para executar um microdroid.

Parâmetros
protectedVm boolean: verdadeiro se o microdroid for executado em uma VM protegida.

Retorna
boolean Retorna "true" se as pré-condições forem atendidas. Caso contrário, retorna "false".

switchUser

public boolean switchUser (int userId)

Mude para outro userId com um tempo limite padrão. switchUser(int, long).

Parâmetros
userId int

Retorna
boolean Verdadeiro se o novo userId corresponder ao provedor de userId. Caso contrário, retorna "falso".

Gera
DeviceNotAvailableException

switchUser

public boolean switchUser (int userId, 
                long timeout)

Mude para outro userId com o tempo limite fornecido como prazo. Tentar desativar o bloqueio de tela depois que a mudança de usuário for concluída.

Parâmetros
userId int

timeout long: aguardar antes de retornar "false" para a troca de usuário com falha.

Retorna
boolean Verdadeiro se o novo userId corresponder ao provedor de userId. Caso contrário, retorna "falso".

Gera
DeviceNotAvailableException

takeBugreport

public Bugreport takeBugreport ()

Recebe um bugreport e o retorna em um objeto Bugreport para processamento. Retorne nulo em caso de problema. O arquivo referenciado no objeto Bugreport precisa ser limpo com Bugreport.close().

Retorna
Bugreport

uninstallPackage

public String uninstallPackage (String packageName)

Desinstala um pacote Android do dispositivo.

Parâmetros
packageName String: o pacote Android a ser desinstalado.

Retorna
String um String com um código de erro ou null se a operação for concluída corretamente.

Gera
DeviceNotAvailableException

uninstallPackageForUser

public String uninstallPackageForUser (String packageName, 
                int userId)

Desinstala um pacote Android do dispositivo para um determinado usuário.

Parâmetros
packageName String: o pacote Android a ser desinstalado.

userId int: o ID de usuário inteiro a ser desinstalado.

Retorna
String um String com um código de erro ou null se a operação for concluída corretamente.

Gera
DeviceNotAvailableException

waitForSnapuserd

public void waitForSnapuserd (SnapuserdWaitPhase currentPhase)

Parâmetros
currentPhase SnapuserdWaitPhase

Gera
DeviceNotAvailableException

Métodos protegidos

createParser

protected AaptParser createParser (File appFile)

Parâmetros
appFile File

Retorna
AaptParser

doAdbReboot

protected void doAdbReboot (NativeDevice.RebootMode rebootMode, 
                String reason)

Faça uma reinicialização do adb.

Parâmetros
rebootMode NativeDevice.RebootMode: um modo dessa reinicialização.

reason String: para esta reinicialização.

Gera
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getBugreportInternal

protected InputStreamSource getBugreportInternal ()

Retorna
InputStreamSource

getBugreportzInternal

protected File getBugreportzInternal ()

Método auxiliar interno para receber o arquivo ZIP bugreportz como um ERROR(/File).

Retorna
File

getCheckNewUserSleep

protected long getCheckNewUserSleep ()

Exposto para testes.

Retorna
long

getHostCurrentTime

protected long getHostCurrentTime ()

Exposto para testes

Retorna
long

prePostBootSetup

protected void prePostBootSetup ()

Permite que cada tipo de dispositivo (AndroidNativeDevice, TestDevice) substitua esse método para configuração específica após a inicialização.

Gera
DeviceNotAvailableException