IDevice

public interface IDevice
implements IShellEnabledDevice

com.android.ddmlib.IDevice


Um dispositivo. Pode ser um dispositivo físico ou um emulador.

Resumo

Constantes

int CHANGE_BUILD_INFO

Máscara de bits de mudança do dispositivo: mudança nas informações do build.

int CHANGE_STATE

Máscara de bits de mudança de dispositivo: mudança de DeviceState.

String FIRST_EMULATOR_SN

Número de série do primeiro emulador conectado.

String MNT_DATA

String MNT_EXTERNAL_STORAGE

String MNT_ROOT

String PROP_BUILD_API_LEVEL

String PROP_BUILD_CHARACTERISTICS

String PROP_BUILD_CODENAME

String PROP_BUILD_TAGS

String PROP_BUILD_TYPE

String PROP_BUILD_VERSION

String PROP_BUILD_VERSION_NUMBER

Essa constante foi descontinuada. Use PROP_BUILD_API_LEVEL.

String PROP_DEBUGGABLE

String PROP_DEVICE_CPU_ABI

String PROP_DEVICE_CPU_ABI2

String PROP_DEVICE_CPU_ABI_LIST

String PROP_DEVICE_DENSITY

String PROP_DEVICE_EMULATOR_DENSITY

String PROP_DEVICE_LANGUAGE

String PROP_DEVICE_MANUFACTURER

String PROP_DEVICE_MODEL

String PROP_DEVICE_REGION

String RE_EMULATOR_SN

Expressão regular do número de série do emulador.

String UNKNOWN_PACKAGE

Métodos públicos

abstract boolean arePropertiesSet()

Retorna true se as propriedades foram armazenadas em cache.

abstract void createForward(int localPort, String remoteSocketName, IDevice.DeviceUnixSocketNamespace namespace)

Cria um encaminhamento de porta entre uma porta TCP local e um soquete de domínio Unix remoto.

abstract void createForward(int localPort, int remotePort)

Cria um encaminhamento de porta entre uma porta local e uma remota.

default void createReverse(int remotePort, int localPort)

Cria uma inversão de porta entre uma porta remota e uma local.

default void executeBinderCommand(String[] parameters, IShellOutputReceiver receiver, long maxTimeToOutputResponse, TimeUnit maxTimeUnits, InputStream is)

Executa um comando do Binder no dispositivo e envia o resultado para um receiver.

Isso usa a chamada exec:cmd ou abb_exec: mais rápida se o SO do dispositivo e o host ADB server forem compatíveis com o recurso de execução do Android Binder Bridge.

abstract void executeShellCommand(String command, IShellOutputReceiver receiver)

Executa um comando do shell no dispositivo e envia o resultado para um receiver.

Isso é semelhante a chamar executeShellCommand(command, receiver, DdmPreferences.getTimeOut()).

abstract void executeShellCommand(String command, IShellOutputReceiver receiver, int maxTimeToOutputResponse)

Esse método foi descontinuado. Use executeShellCommand(String,IShellOutputReceiver,long,TimeUnit).

default void executeShellCommand(String command, IShellOutputReceiver receiver, long maxTimeToOutputResponse, TimeUnit maxTimeUnits, InputStream is)

Uma versão do comando executeShell que pode receber um fluxo de entrada para enviar pelo stdin.

default void forceStop(String applicationName)

Forçar o fechamento de um aplicativo pelo nome dele.

abstract List<String> getAbis()

Retorna as ABIs compatíveis com este dispositivo.

default ListenableFuture<AvdData> getAvdData()

Retorna informações sobre o AVD em que o emulador está sendo executado.

abstract String getAvdName()

Retorna o nome do AVD em que o emulador está sendo executado.

abstract String getAvdPath()

Retorna o caminho absoluto para o dispositivo virtual no sistema de arquivos.

abstract Future<Integer> getBattery(long freshnessTime, TimeUnit timeUnit)

Retorna o nível de bateria do dispositivo, de 0 a 100%.

abstract Future<Integer> getBattery()

Retorna o nível de bateria do dispositivo, de 0 a 100%.

abstract Integer getBatteryLevel(long freshnessMs)

Esse método foi descontinuado. usar getBattery(long,TimeUnit)

abstract Integer getBatteryLevel()

Esse método foi descontinuado. usar getBattery()

abstract int getDensity()

Retorna o bucket de densidade da tela do dispositivo lendo o valor da propriedade do sistema PROP_DEVICE_DENSITY.

abstract FileListingService getFileListingService()

Retorna um FileListingService para este dispositivo.

default Set<String> getHardwareCharacteristics()

Retorna recursos obtidos pela leitura da propriedade de características de build.

abstract String getLanguage()

Retorna o idioma do usuário.

default InstallMetrics getLastInstallMetrics()

Recebe informações sobre a instalação mais recente neste dispositivo.

abstract String getMountPoint(String name)

Retorna um ponto de montagem.

abstract Map<String, String> getProperties()

Esse método foi descontinuado. use getSystemProperty(String) em vez disso

abstract String getProperty(String name)

Método de conveniência que tenta recuperar uma propriedade usando getSystemProperty(String) com um tempo de espera muito curto e ignora exceções.

abstract String getPropertyCacheOrSync(String name)

Esse método foi descontinuado. use getSystemProperty(String) em vez disso

abstract int getPropertyCount()

Esse método foi descontinuado. detalhe da implementação

abstract String getPropertySync(String name)

Esse método foi descontinuado. usar getSystemProperty(String)

abstract String getRegion()

Retorna a região do usuário.

abstract RawImage getScreenshot()

Faz uma captura de tela do dispositivo e a retorna como um RawImage.

abstract RawImage getScreenshot(long timeout, TimeUnit unit)
abstract String getSerialNumber()

Retorna o número de série do dispositivo.

abstract IDevice.DeviceState getState()

Retorna o estado do dispositivo.

abstract SyncService getSyncService()

Retorna um objeto SyncService para enviar / extrair arquivos do dispositivo.

abstract void installPackage(String packageFilePath, boolean reinstall, InstallReceiver receiver, String... extraArgs)

Instala um app Android no dispositivo.

abstract void installPackage(String packageFilePath, boolean reinstall, InstallReceiver receiver, long maxTimeout, long maxTimeToOutputResponse, TimeUnit maxTimeUnits, String... extraArgs)

Instala um app Android no dispositivo.

abstract void installPackage(String packageFilePath, boolean reinstall, String... extraArgs)

Instala um app Android no dispositivo.

abstract void installPackages(List<File> apks, boolean reinstall, List<String> installOptions, long timeout, TimeUnit timeoutUnit)

Instala um app Android feito de vários arquivos APK (um principal e 0..n pacotes divididos).

default void installPackages(List<File> apks, boolean reinstall, List<String> installOptions)

Instala um app Android feito de vários arquivos APK (um principal e 0..n pacotes divididos) com tempo limite padrão.

abstract void installRemotePackage(String remoteFilePath, boolean reinstall, InstallReceiver receiver, String... extraArgs)

Instala o pacote de aplicativo que foi enviado para um local temporário no dispositivo.

abstract void installRemotePackage(String remoteFilePath, boolean reinstall, String... extraArgs)

Instala o pacote de aplicativo que foi enviado para um local temporário no dispositivo.

abstract void installRemotePackage(String remoteFilePath, boolean reinstall, InstallReceiver receiver, long maxTimeout, long maxTimeToOutputResponse, TimeUnit maxTimeUnits, String... extraArgs)

Instala o pacote de aplicativo que foi enviado para um local temporário no dispositivo.

default void installRemotePackages(List<String> remoteApks, boolean reinstall, List<String> installOptions, long timeout, TimeUnit timeoutUnit)

Instala um aplicativo Android feito de vários arquivos APK armazenados localmente no dispositivo.

default void installRemotePackages(List<String> remoteApks, boolean reinstall, List<String> installOptions)

Instala um aplicativo Android feito de vários arquivos APK armazenados localmente no dispositivo com tempo limite padrão.

abstract boolean isBootLoader()

Retorna se o dispositivo está no modo bootloader.

abstract boolean isEmulator()

Retorna true se o dispositivo for um emulador.

abstract boolean isOffline()

Retorna se o dispositivo está off-line.

abstract boolean isOnline()

Retorna se o dispositivo está pronto.

abstract boolean isRoot()

Consulta o status de root atual do dispositivo.

default void kill(String applicationName)

Encerra um aplicativo pelo nome dele.

abstract void pullFile(String remote, String local)

Extrai um único arquivo.

default void push(String[] local, String remote)

Envia vários arquivos ou diretórios.

abstract void pushFile(String local, String remote)

Envia um único arquivo.

default SocketChannel rawBinder(String service, String[] parameters)

Invocar o serviço Android Binder Bridge em um dispositivo remoto.

default SocketChannel rawExec(String executable, String[] parameters)

Invocar o serviço host:exec em um dispositivo remoto.

abstract void reboot(String into)

Reinicialize o dispositivo.

default void removeForward(int localPort)

Remove um encaminhamento de porta entre uma porta local e uma remota.

default void removeForward(int localPort, int remotePort)

Esse método foi descontinuado. Use removeForward(int)

default void removeForward(int localPort, String remoteSocketName, IDevice.DeviceUnixSocketNamespace namespace)

Esse método foi descontinuado. Use removeForward(int)

abstract void removeRemotePackage(String remoteFilePath)

Remove um arquivo do dispositivo.

default void removeReverse(int remotePort)

Remove uma inversão de porta entre uma porta remota e uma local.

abstract boolean root()

Peça ao daemon adb para se tornar root no dispositivo.

abstract void startScreenRecorder(String remoteFilePath, ScreenRecorderOptions options, IShellOutputReceiver receiver)

Inicia a gravação de tela no dispositivo se ele for compatível com Feature.SCREEN_RECORD.

abstract boolean supportsFeature(IDevice.HardwareFeature feature)

Retorna se o dispositivo é compatível com o recurso de hardware especificado.

abstract boolean supportsFeature(IDevice.Feature feature)

Retorna se o dispositivo é compatível com o recurso de software especificado.

abstract String syncPackageToDevice(String localFilePath)

Envia um arquivo para o dispositivo

abstract String uninstallApp(String applicationID, String... extraArgs)

Desinstala um app do dispositivo.

abstract String uninstallPackage(String packageName)

Desinstala um pacote do dispositivo.

Constantes

CHANGE_BUILD_INFO

public static final int CHANGE_BUILD_INFO

Máscara de bits de mudança do dispositivo: mudança nas informações do build.

Valor da constante: 4 (0x00000004)

CHANGE_STATE

public static final int CHANGE_STATE

Máscara de bits de mudança de dispositivo: mudança de DeviceState.

Valor da constante: 1 (0x00000001)

FIRST_EMULATOR_SN

public static final String FIRST_EMULATOR_SN

Número de série do primeiro emulador conectado.

Valor da constante: "emulator-5554"

MNT_DATA

public static final String MNT_DATA

Valor da constante: "ANDROID_DATA"

MNT_EXTERNAL_STORAGE

public static final String MNT_EXTERNAL_STORAGE

Valor da constante: "EXTERNAL_STORAGE"

MNT_ROOT

public static final String MNT_ROOT

Valor da constante: "ANDROID_ROOT"

PROP_BUILD_API_LEVEL

public static final String PROP_BUILD_API_LEVEL

Valor da constante: "ro.build.version.sdk"

PROP_BUILD_CHARACTERISTICS

public static final String PROP_BUILD_CHARACTERISTICS

Valor da constante: "ro.build.characteristics"

PROP_BUILD_CODENAME

public static final String PROP_BUILD_CODENAME

Valor da constante: "ro.build.version.codename"

PROP_BUILD_TAGS

public static final String PROP_BUILD_TAGS

Valor da constante: "ro.build.tags"

PROP_BUILD_TYPE

public static final String PROP_BUILD_TYPE

Valor da constante: "ro.build.type"

PROP_BUILD_VERSION

public static final String PROP_BUILD_VERSION

Valor da constante: "ro.build.version.release"

PROP_BUILD_VERSION_NUMBER

public static final String PROP_BUILD_VERSION_NUMBER

Essa constante está obsoleta.
Use PROP_BUILD_API_LEVEL.

Valor da constante: "ro.build.version.sdk"

PROP_DEBUGGABLE

public static final String PROP_DEBUGGABLE

Valor da constante: "ro.debuggable"

PROP_DEVICE_CPU_ABI

public static final String PROP_DEVICE_CPU_ABI

Valor da constante: "ro.product.cpu.abi"

PROP_DEVICE_CPU_ABI2

public static final String PROP_DEVICE_CPU_ABI2

Valor da constante: "ro.product.cpu.abi2"

PROP_DEVICE_CPU_ABI_LIST

public static final String PROP_DEVICE_CPU_ABI_LIST

Valor da constante: "ro.product.cpu.abilist"

PROP_DEVICE_DENSITY

public static final String PROP_DEVICE_DENSITY

Valor da constante: "ro.sf.lcd_density"

PROP_DEVICE_EMULATOR_DENSITY

public static final String PROP_DEVICE_EMULATOR_DENSITY

Valor da constante: "qemu.sf.lcd_density"

PROP_DEVICE_LANGUAGE

public static final String PROP_DEVICE_LANGUAGE

Valor da constante: "persist.sys.language"

PROP_DEVICE_MANUFACTURER

public static final String PROP_DEVICE_MANUFACTURER

Valor da constante: "ro.product.manufacturer"

PROP_DEVICE_MODEL

public static final String PROP_DEVICE_MODEL

Valor da constante: "ro.product.model"

PROP_DEVICE_REGION

public static final String PROP_DEVICE_REGION

Valor da constante: "persist.sys.country"

RE_EMULATOR_SN

public static final String RE_EMULATOR_SN

Expressão regular do número de série do emulador.

Valor da constante: "emulator-(\d+)"

UNKNOWN_PACKAGE

public static final String UNKNOWN_PACKAGE

Valor da constante: ""

Métodos públicos

arePropertiesSet

public abstract boolean arePropertiesSet ()

Retorna true se as propriedades foram armazenadas em cache.

Retorna
boolean

createForward

public abstract void createForward (int localPort, 
                String remoteSocketName, 
                IDevice.DeviceUnixSocketNamespace namespace)

Cria um encaminhamento de porta entre uma porta TCP local e um soquete de domínio Unix remoto.

Parâmetros
localPort int: a porta local a ser encaminhada

remoteSocketName String: nome do soquete de domínio Unix criado no dispositivo.

namespace IDevice.DeviceUnixSocketNamespace: namespace em que o soquete de domínio Unix foi criado

Gera
AdbCommandRejectedException se o adb rejeitar o comando
TimeoutException em caso de tempo limite na conexão.
IOException em caso de erro de E/S na conexão.

createForward

public abstract void createForward (int localPort, 
                int remotePort)

Cria um encaminhamento de porta entre uma porta local e uma remota.

Parâmetros
localPort int: a porta local a ser encaminhada

remotePort int: a porta remota.

Gera
AdbCommandRejectedException se o adb rejeitar o comando
TimeoutException em caso de tempo limite na conexão.
IOException em caso de erro de E/S na conexão.

createReverse

public void createReverse (int remotePort, 
                int localPort)

Cria uma inversão de porta entre uma porta remota e uma local.

Parâmetros
remotePort int: a porta remota a ser invertida.

localPort int: a porta local;

Gera
AdbCommandRejectedException se o adb rejeitar o comando
TimeoutException em caso de tempo limite na conexão.
IOException em caso de erro de E/S na conexão.

executeBinderCommand

public void executeBinderCommand (String[] parameters, 
                IShellOutputReceiver receiver, 
                long maxTimeToOutputResponse, 
                TimeUnit maxTimeUnits, 
                InputStream is)

Executa um comando do Binder no dispositivo e envia o resultado para um receiver.

Isso usa a chamada exec:cmd ou abb_exec: mais rápida se o SO do dispositivo e o host ADB server forem compatíveis com o recurso de execução do Android Binder Bridge.

Parâmetros
parameters String: o comando do binder a ser executado

receiver IShellOutputReceiver: o IShellOutputReceiver que vai receber a saída do comando binder

maxTimeToOutputResponse long

maxTimeUnits TimeUnit

is InputStream: fluxo de entrada opcional para enviar pelo stdin

Gera
AdbCommandRejectedException se o adb rejeitar o comando
ShellCommandUnresponsiveException caso o comando do binder não envie saída por um determinado período.
TimeoutException em caso de tempo limite na conexão.
IOException em caso de erro de E/S na conexão.

Confira também:

executeShellCommand

public abstract void executeShellCommand (String command, 
                IShellOutputReceiver receiver)

Executa um comando do shell no dispositivo e envia o resultado para um receiver.

Isso é semelhante a chamar executeShellCommand(command, receiver, DdmPreferences.getTimeOut()).

Parâmetros
command String: o comando do shell a ser executado

receiver IShellOutputReceiver: o IShellOutputReceiver que vai receber a saída do comando do shell.

Gera
AdbCommandRejectedException se o adb rejeitar o comando
ShellCommandUnresponsiveException caso o comando do shell não envie saída por um determinado período.
TimeoutException em caso de tempo limite na conexão.
IOException em caso de erro de E/S na conexão.

executeShellCommand

public abstract void executeShellCommand (String command, 
                IShellOutputReceiver receiver, 
                int maxTimeToOutputResponse)

Esse método foi descontinuado.
Use executeShellCommand(String,IShellOutputReceiver,long,TimeUnit).

Parâmetros
command String

receiver IShellOutputReceiver

maxTimeToOutputResponse int

Gera
AdbCommandRejectedException
IOException
ShellCommandUnresponsiveException
TimeoutException

executeShellCommand

public void executeShellCommand (String command, 
                IShellOutputReceiver receiver, 
                long maxTimeToOutputResponse, 
                TimeUnit maxTimeUnits, 
                InputStream is)

Uma versão do comando executeShell que pode receber um fluxo de entrada para enviar pelo stdin.

Parâmetros
command String

receiver IShellOutputReceiver

maxTimeToOutputResponse long

maxTimeUnits TimeUnit

is InputStream

Gera
AdbCommandRejectedException
IOException
ShellCommandUnresponsiveException
TimeoutException

forceStop

public void forceStop (String applicationName)

Forçar o fechamento de um aplicativo pelo nome dele. Isso remove todos os alarmes pendentes e os cálculos enfileirados.

Parâmetros
applicationName String: o nome do aplicativo

getAbis

public abstract List<String> getAbis ()

Retorna as ABIs compatíveis com este dispositivo. As ABIs são classificadas na ordem de preferência, sendo a primeira a mais preferida.

Retorna
List<String> a lista de ABIs.

getAvdData

public ListenableFuture<AvdData> getAvdData ()

Retorna informações sobre o AVD em que o emulador está sendo executado.

AvdData.getName é o nome do AVD ou null se não houver nenhum.

AvdData.getPath é o caminho do AVD ou nulo se for um dispositivo físico, se o subcomando do console do emulador falhar ou se a versão do emulador for anterior a 30.0.18.

Retorna
ListenableFuture<AvdData> o AvdData do dispositivo.

getAvdName

public abstract String getAvdName ()

Retorna o nome do AVD em que o emulador está sendo executado.

Isso só é válido se isEmulator() retornar "true".

Se o emulador não estiver executando nenhum AVD (por exemplo, se estiver sendo executado de um build de árvore de origem do Android), esse método vai retornar "<build>".

Observação: prefira usar getAvdData() se quiser controlar o tempo limite.

Retorna
String o nome do AVD ou null se não houver nenhum.

getAvdPath

public abstract String getAvdPath ()

Retorna o caminho absoluto para o dispositivo virtual no sistema de arquivos. O caminho depende do sistema operacional. Ele terá separadores de nome / no Linux e \ no Windows.

Observação: prefira usar getAvdData() se quiser controlar o tempo limite.

Retorna
String o caminho do AVD ou nulo se for um dispositivo físico, o subcomando do console do emulador falhou ou a versão do emulador é anterior a 30.0.18

getBattery

public abstract Future<Integer> getBattery (long freshnessTime, 
                TimeUnit timeUnit)

Retorna o nível de bateria do dispositivo, de 0 a 100%.

O nível de bateria pode estar em cache. Só consulta o nível de bateria do dispositivo se freshnessTime tiver expirado desde a última consulta bem-sucedida.

Parâmetros
freshnessTime long: a atualização desejada do nível da bateria

timeUnit TimeUnit: o TimeUnit de "freshnessTime"

Retorna
Future<Integer> um Future que pode ser usado para consultar o Nível de bateria. O Future vai retornar um ExecutionException se o nível da bateria não puder ser recuperado.

getBattery

public abstract Future<Integer> getBattery ()

Retorna o nível de bateria do dispositivo, de 0 a 100%.

O nível de bateria pode estar em cache. Só consulta o nível de bateria do dispositivo se 5 minutos tiverem expirado desde a última consulta bem-sucedida.

Retorna
Future<Integer> um Future que pode ser usado para consultar o Nível de bateria. O Future vai retornar um ExecutionException se o nível da bateria não puder ser recuperado.

getBatteryLevel

public abstract Integer getBatteryLevel (long freshnessMs)

Esse método foi descontinuado.
use getBattery(long,TimeUnit)

Retorna o nível de bateria do dispositivo, de 0 a 100%.

O nível de bateria pode estar em cache. Só consulta o Nível de bateria do dispositivo se freshnessMs ms tiverem expirado desde a última consulta bem-sucedida.

Retorna
Integer o Nível de bateria ou null se não for possível recuperá-lo

Gera
com.android.ddmlib.ShellCommandUnresponsiveException
AdbCommandRejectedException
IOException
ShellCommandUnresponsiveException
TimeoutException

getBatteryLevel

public abstract Integer getBatteryLevel ()

Esse método foi descontinuado.
use getBattery()

Retorna o nível de bateria do dispositivo, de 0 a 100%.

O nível de bateria pode estar em cache. Só consulta o nível de bateria do dispositivo se 5 minutos tiverem expirado desde a última consulta bem-sucedida.

Retorna
Integer o Nível de bateria ou null se não for possível recuperá-lo

Gera
AdbCommandRejectedException
IOException
ShellCommandUnresponsiveException
TimeoutException

getDensity

public abstract int getDensity ()

Retorna o bucket de densidade da tela do dispositivo lendo o valor da propriedade do sistema PROP_DEVICE_DENSITY.

Retorna
int a densidade ou -1 se não for possível determinar.

getFileListingService

public abstract FileListingService getFileListingService ()

Retorna um FileListingService para este dispositivo.

Retorna
FileListingService

getHardwareCharacteristics

public Set<String> getHardwareCharacteristics ()

Retorna recursos obtidos pela leitura da propriedade de características de build.

Retorna
Set<String>

Gera
Exception

getLanguage

public abstract String getLanguage ()

Retorna o idioma do usuário.

Retorna
String o idioma do usuário ou nulo se for desconhecido

getLastInstallMetrics

public InstallMetrics getLastInstallMetrics ()

Recebe informações sobre a instalação mais recente neste dispositivo.

Retorna
InstallMetrics InstallMetrics métricas que descrevem a instalação.

getMountPoint

public abstract String getMountPoint (String name)

Retorna um ponto de montagem.

Parâmetros
name String: o nome do ponto de montagem a ser retornado

Retorna
String

getProperties

public abstract Map<String, String> getProperties ()

Esse método foi descontinuado.
use getSystemProperty(String) em vez disso

Retorna as propriedades armazenadas em cache do dispositivo. Ele contém toda a saída de "getprop".

Retorna
Map<String, String>

getProperty

public abstract String getProperty (String name)

Método de conveniência que tenta recuperar uma propriedade usando getSystemProperty(String) com um tempo de espera muito curto e ignora exceções.

Observação: prefira usar getSystemProperty(String) se quiser controlar o tempo limite.

Parâmetros
name String: o nome do valor a ser retornado.

Retorna
String o valor ou null se o valor da propriedade não estiver disponível imediatamente

getPropertyCacheOrSync

public abstract String getPropertyCacheOrSync (String name)

Esse método foi descontinuado.
use getSystemProperty(String) em vez disso

Uma combinação de getProperty(String) e getPropertySync(String) que tentará recuperar a propriedade do cache. Se não for encontrado, vai tentar de forma síncrona consultar o dispositivo diretamente e preencher novamente o cache se a consulta for bem-sucedida.

Parâmetros
name String: o nome do valor a ser retornado.

Retorna
String o valor ou null se a propriedade não existir

Gera
AdbCommandRejectedException se o adb rejeitar o comando
ShellCommandUnresponsiveException caso o comando do shell não envie saída por um determinado período.
TimeoutException em caso de tempo limite na conexão.
IOException em caso de erro de E/S na conexão.

getPropertyCount

public abstract int getPropertyCount ()

Esse método foi descontinuado.
detalhe da implementação

Retorna o número da propriedade para este dispositivo.

Retorna
int

getPropertySync

public abstract String getPropertySync (String name)

Esse método foi descontinuado.
use getSystemProperty(String)

Uma variante de getProperty(String) que tenta recuperar a propriedade especificada diretamente do dispositivo, sem usar o cache. Esse método só deve ser usado para propriedades voláteis.

Parâmetros
name String: o nome do valor a ser retornado.

Retorna
String o valor ou null se a propriedade não existir

Gera
AdbCommandRejectedException se o adb rejeitar o comando
ShellCommandUnresponsiveException caso o comando do shell não envie saída por um determinado período.
TimeoutException em caso de tempo limite na conexão.
IOException em caso de erro de E/S na conexão.

getRegion

public abstract String getRegion ()

Retorna a região do usuário.

Retorna
String a região do usuário ou nulo se ela for desconhecida

getScreenshot

public abstract RawImage getScreenshot ()

Faz uma captura de tela do dispositivo e a retorna como um RawImage.

Retorna
RawImage a captura de tela como um RawImage ou null se algo der errado.

Gera
AdbCommandRejectedException se o adb rejeitar o comando
TimeoutException em caso de tempo limite na conexão.
IOException em caso de erro de E/S na conexão.

getScreenshot

public abstract RawImage getScreenshot (long timeout, 
                TimeUnit unit)

Parâmetros
timeout long

unit TimeUnit

Retorna
RawImage

Gera
AdbCommandRejectedException
IOException
TimeoutException

getSerialNumber

public abstract String getSerialNumber ()

Retorna o número de série do dispositivo.

Retorna
String

getState

public abstract IDevice.DeviceState getState ()

Retorna o estado do dispositivo.

Retorna
IDevice.DeviceState

getSyncService

public abstract SyncService getSyncService ()

Retorna um objeto SyncService para enviar / extrair arquivos do dispositivo.

Retorna
SyncService null se não for possível criar o SyncService. Isso pode acontecer se o adb se recusar a abrir a conexão porque o IDevice é inválido (ou foi desconectado).

Gera
AdbCommandRejectedException se o adb rejeitar o comando
TimeoutException em caso de tempo limite na conexão.
IOException se a conexão com o adb falhar.

installPackage

public abstract void installPackage (String packageFilePath, 
                boolean reinstall, 
                InstallReceiver receiver, 
                String... extraArgs)

Instala um app Android no dispositivo. Esse é um método auxiliar que combina as etapas syncPackageToDevice, installRemotePackage e removePackage.

Parâmetros
packageFilePath String: o caminho absoluto do sistema de arquivos para o arquivo no host local a ser instalado

reinstall boolean: defina como true se a reinstalação do app precisar ser realizada.

receiver InstallReceiver: o InstallReceiver a ser usado para monitorar a instalação e receber o status final.

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

Gera
InstallException se a instalação falhar.

installPackage

public abstract void installPackage (String packageFilePath, 
                boolean reinstall, 
                InstallReceiver receiver, 
                long maxTimeout, 
                long maxTimeToOutputResponse, 
                TimeUnit maxTimeUnits, 
                String... extraArgs)

Instala um app Android no dispositivo. Esse é um método auxiliar que combina as etapas syncPackageToDevice, installRemotePackage e removePackage.

Parâmetros
packageFilePath String: o caminho absoluto do sistema de arquivos para o arquivo no host local a ser instalado

reinstall boolean: defina como true se a reinstalação do app precisar ser realizada.

receiver InstallReceiver: o InstallReceiver a ser usado para monitorar a instalação e receber o status final.

maxTimeout long: o tempo limite máximo para o retorno do comando. Um valor de 0 significa que nenhum tempo limite máximo será aplicado.

maxTimeToOutputResponse long: o período máximo em que o comando pode não gerar nenhuma resposta. Um valor de 0 significa que o método vai esperar para sempre (até que o receiver cancele a execução) pela resposta ao comando e nunca vai gerar uma exceção.

maxTimeUnits TimeUnit: unidades para valores maxTimeout e maxTimeToOutputResponse diferentes de zero.

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

Gera
InstallException se a instalação falhar.

installPackage

public abstract void installPackage (String packageFilePath, 
                boolean reinstall, 
                String... extraArgs)

Instala um app Android no dispositivo. Esse é um método auxiliar que combina as etapas syncPackageToDevice, installRemotePackage e removePackage.

Parâmetros
packageFilePath String: o caminho absoluto do sistema de arquivos para o arquivo no host local a ser instalado

reinstall boolean: defina como true se a reinstalação do app precisar ser realizada.

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

Gera
InstallException se a instalação falhar.

installPackages

public abstract void installPackages (List<File> apks, 
                boolean reinstall, 
                List<String> installOptions, 
                long timeout, 
                TimeUnit timeoutUnit)

Instala um app Android feito de vários arquivos APK (um principal e 0..n pacotes divididos).

Parâmetros
apks List: lista de APKs a serem instalados (um APK principal + 0 a n APKs divididos)

reinstall boolean: defina como true se a reinstalação do app precisar ser realizada.

installOptions List: argumentos extras opcionais a serem transmitidos. Consulte "adb shell pm install --help" para ver as opções disponíveis.

timeout long: tempo limite de instalação

timeoutUnit TimeUnit: TimeUnit correspondente ao parâmetro de tempo limite

Gera
InstallException se a instalação falhar.

installPackages

public void installPackages (List<File> apks, 
                boolean reinstall, 
                List<String> installOptions)

Instala um app Android feito de vários arquivos APK (um principal e 0..n pacotes divididos) com tempo limite padrão.

Parâmetros
apks List: lista de APKs a serem instalados (um APK principal + 0 a n APKs divididos)

reinstall boolean: defina como true se a reinstalação do app precisar ser realizada.

installOptions List: argumentos extras opcionais a serem transmitidos. Consulte "adb shell pm install --help" para ver as opções disponíveis.

Gera
InstallException se a instalação falhar.

installRemotePackage

public abstract void installRemotePackage (String remoteFilePath, 
                boolean reinstall, 
                InstallReceiver receiver, 
                String... extraArgs)

Instala o pacote de aplicativo que foi enviado para um local temporário no dispositivo.

Parâmetros
remoteFilePath String: caminho absoluto do arquivo do pacote no dispositivo

reinstall boolean: defina como true se a reinstalação do app precisar ser realizada.

receiver InstallReceiver: o InstallReceiver a ser usado para monitorar a instalação e receber o status final.

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

Gera
InstallException se a instalação falhar.

installRemotePackage

public abstract void installRemotePackage (String remoteFilePath, 
                boolean reinstall, 
                String... extraArgs)

Instala o pacote de aplicativo que foi enviado para um local temporário no dispositivo.

Parâmetros
remoteFilePath String: caminho absoluto do arquivo do pacote no dispositivo

reinstall boolean: defina como true se a reinstalação do app precisar ser realizada.

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

Gera
InstallException se a instalação falhar.

installRemotePackage

public abstract void installRemotePackage (String remoteFilePath, 
                boolean reinstall, 
                InstallReceiver receiver, 
                long maxTimeout, 
                long maxTimeToOutputResponse, 
                TimeUnit maxTimeUnits, 
                String... extraArgs)

Instala o pacote de aplicativo que foi enviado para um local temporário no dispositivo.

Parâmetros
remoteFilePath String: caminho absoluto do arquivo do pacote no dispositivo

reinstall boolean: defina como true se a reinstalação do app precisar ser realizada.

receiver InstallReceiver: o InstallReceiver a ser usado para monitorar a instalação e receber o status final.

maxTimeout long: o tempo limite máximo para o retorno do comando. Um valor de 0 significa que nenhum tempo limite máximo será aplicado.

maxTimeToOutputResponse long: o período máximo em que o comando pode não gerar nenhuma resposta. Um valor de 0 significa que o método vai esperar para sempre (até que o receiver cancele a execução) pela resposta ao comando e nunca vai gerar uma exceção.

maxTimeUnits TimeUnit: unidades para valores maxTimeout e maxTimeToOutputResponse diferentes de zero.

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

Gera
InstallException se a instalação falhar.

installRemotePackages

public void installRemotePackages (List<String> remoteApks, 
                boolean reinstall, 
                List<String> installOptions, 
                long timeout, 
                TimeUnit timeoutUnit)

Instala um aplicativo Android feito de vários arquivos APK armazenados localmente no dispositivo.

Parâmetros
remoteApks List: lista de caminhos de arquivos APK no dispositivo para instalação

reinstall boolean: defina como true se a reinstalação do app precisar ser realizada.

installOptions List: argumentos extras opcionais a serem transmitidos. Consulte "adb shell pm install --help" para ver as opções disponíveis.

timeout long: tempo limite de instalação

timeoutUnit TimeUnit: TimeUnit correspondente ao parâmetro de tempo limite

Gera
InstallException se a instalação falhar.

installRemotePackages

public void installRemotePackages (List<String> remoteApks, 
                boolean reinstall, 
                List<String> installOptions)

Instala um aplicativo Android feito de vários arquivos APK armazenados localmente no dispositivo com tempo limite padrão.

Parâmetros
remoteApks List: lista de caminhos de arquivos APK no dispositivo para instalação

reinstall boolean: defina como true se a reinstalação do app precisar ser realizada.

installOptions List: argumentos extras opcionais a serem transmitidos. Consulte "adb shell pm install --help" para ver as opções disponíveis.

Gera
InstallException se a instalação falhar.

isBootLoader

public abstract boolean isBootLoader ()

Retorna se o dispositivo está no modo bootloader.

Retorna
boolean true se getState() retornar DeviceState.BOOTLOADER.

isEmulator

public abstract boolean isEmulator ()

Retorna true se o dispositivo for um emulador.

Retorna
boolean

isOffline

public abstract boolean isOffline ()

Retorna se o dispositivo está off-line.

Retorna
boolean true se getState() retornar DeviceState.OFFLINE.

isOnline

public abstract boolean isOnline ()

Retorna se o dispositivo está pronto.

Retorna
boolean true se getState() retornar DeviceState.ONLINE.

isRoot

public abstract boolean isRoot ()

Consulta o status de root atual do dispositivo. Consulte "adb root" para mais informações.

Retorna
boolean "true" se o daemon adb estiver sendo executado como root. Caso contrário, "false".

Gera
AdbCommandRejectedException se o adb rejeitar o comando.
TimeoutException em caso de tempo limite na conexão.
IOException
ShellCommandUnresponsiveException

kill

public void kill (String applicationName)

Encerra um aplicativo pelo nome dele. Isso só destrói as atividades, deixando o estado delas apenas no sistema Android.

Parâmetros
applicationName String: o nome do aplicativo

pullFile

public abstract void pullFile (String remote, 
                String local)

Extrai um único arquivo.

Parâmetros
remote String: o caminho completo para o arquivo remoto

local String: o destino local.

Gera
AdbCommandRejectedException se o adb rejeitar o comando
SyncException em caso de uma exceção de sincronização.
TimeoutException em caso de tempo limite ao ler respostas do dispositivo.
IOException em caso de uma exceção de E/S.

push

public void push (String[] local, 
                String remote)

Envia vários arquivos ou diretórios.

Parâmetros
local String: os arquivos locais a serem enviados

remote String: o caminho remoto que representa um diretório

Gera
AdbCommandRejectedException se o adb rejeitar o comando
SyncException se alguns arquivos não puderem ser enviados por push
TimeoutException em caso de tempo limite ao ler respostas do dispositivo
IOException em caso de erro de E/S na conexão

pushFile

public abstract void pushFile (String local, 
                String remote)

Envia um único arquivo.

Parâmetros
local String: o caminho do arquivo local.

remote String: o caminho do arquivo remoto

Gera
AdbCommandRejectedException se o adb rejeitar o comando
SyncException se não for possível enviar o arquivo
TimeoutException em caso de tempo limite ao ler respostas do dispositivo
IOException em caso de erro de E/S na conexão

rawBinder

public SocketChannel rawBinder (String service, 
                String[] parameters)

Invocar o serviço Android Binder Bridge em um dispositivo remoto. Retorna um canal de soquete conectado ao comando de vinculação do dispositivo.

A propriedade do SocketChannel é transferida para o caller, e ele precisa ser fechado explicitamente após o uso.

Parâmetros
service String: o nome do serviço do Android a ser conectado

parameters String: os parâmetros do comando do binder

Retorna
SocketChannel Um SocketChannel conectado ao processo em execução no dispositivo. após o uso.

Gera
AdbCommandRejectedException
IOException
TimeoutException

rawExec

public SocketChannel rawExec (String executable, 
                String[] parameters)

Invocar o serviço host:exec em um dispositivo remoto. Retorna um canal de soquete conectado ao processo em execução. Observação: o serviço de execução não diferencia stdout e stderr. Portanto, tudo o que é lido do soquete pode vir de qualquer saída e ser intercalado.

A propriedade do SocketChannel é transferida para o caller, e ele precisa ser fechado explicitamente após o uso.

Parâmetros
executable String

parameters String

Retorna
SocketChannel Um SocketChannel conectado ao processo em execução no dispositivo. após o uso.

Gera
AdbCommandRejectedException
IOException
TimeoutException

reinicializar

public abstract void reboot (String into)

Reinicialize o dispositivo.

Parâmetros
into String: o nome do carregador de inicialização para reiniciar ou nulo para apenas reiniciar o dispositivo.

Gera
AdbCommandRejectedException se o adb rejeitar o comando
TimeoutException em caso de tempo limite na conexão.
java.io.IOException
IOException

removeForward

public void removeForward (int localPort)

Remove um encaminhamento de porta entre uma porta local e uma remota.

Parâmetros
localPort int: a porta local a ser encaminhada

Gera
AdbCommandRejectedException se o adb rejeitar o comando
TimeoutException em caso de tempo limite na conexão.
IOException em caso de erro de E/S na conexão.

removeForward

public void removeForward (int localPort, 
                int remotePort)

Esse método foi descontinuado.
Use removeForward(int)

Parâmetros
localPort int

remotePort int

Gera
AdbCommandRejectedException
IOException
TimeoutException

removeForward

public void removeForward (int localPort, 
                String remoteSocketName, 
                IDevice.DeviceUnixSocketNamespace namespace)

Esse método foi descontinuado.
Use removeForward(int)

Parâmetros
localPort int

remoteSocketName String

namespace IDevice.DeviceUnixSocketNamespace

Gera
AdbCommandRejectedException
IOException
TimeoutException

removeRemotePackage

public abstract void removeRemotePackage (String remoteFilePath)

Remove um arquivo do dispositivo.

Parâmetros
remoteFilePath String: caminho no dispositivo do arquivo a ser removido

Gera
InstallException se a instalação falhar.

removeReverse

public void removeReverse (int remotePort)

Remove uma inversão de porta entre uma porta remota e uma local.

Parâmetros
remotePort int: a porta remota.

Gera
AdbCommandRejectedException se o adb rejeitar o comando
TimeoutException em caso de tempo limite na conexão.
IOException em caso de erro de E/S na conexão.

root

public abstract boolean root ()

Peça ao daemon adb para se tornar root no dispositivo. Isso pode falhar silenciosamente e só vai funcionar em builds de desenvolvedor. Consulte "adb root" para mais informações.

Retorna
boolean "true" se o daemon adb estiver sendo executado como root. Caso contrário, "false".

Gera
AdbCommandRejectedException se o adb rejeitar o comando.
ShellCommandUnresponsiveException se não for possível consultar o status da raiz.
TimeoutException em caso de tempo limite na conexão.
java.io.IOException
IOException

startScreenRecorder

public abstract void startScreenRecorder (String remoteFilePath, 
                ScreenRecorderOptions options, 
                IShellOutputReceiver receiver)

Inicia a gravação de tela no dispositivo se ele for compatível com Feature.SCREEN_RECORD.

Parâmetros
remoteFilePath String

options ScreenRecorderOptions

receiver IShellOutputReceiver

Gera
AdbCommandRejectedException
IOException
ShellCommandUnresponsiveException
TimeoutException

supportsFeature

public abstract boolean supportsFeature (IDevice.HardwareFeature feature)

Retorna se o dispositivo é compatível com o recurso de hardware especificado.

Parâmetros
feature IDevice.HardwareFeature

Retorna
boolean

supportsFeature

public abstract boolean supportsFeature (IDevice.Feature feature)

Retorna se o dispositivo é compatível com o recurso de software especificado.

Parâmetros
feature IDevice.Feature

Retorna
boolean

syncPackageToDevice

public abstract String syncPackageToDevice (String localFilePath)

Envia um arquivo para o dispositivo

Parâmetros
localFilePath String: o caminho absoluto para o arquivo no host local

Retorna
String Caminho de destino String no dispositivo para o arquivo

Gera
AdbCommandRejectedException se o adb rejeitar o comando
SyncException se ocorrer um erro durante o envio do pacote para o dispositivo.
TimeoutException em caso de tempo limite na conexão.
IOException em caso de erro de E/S na conexão.

uninstallApp

public abstract String uninstallApp (String applicationID, 
                String... extraArgs)

Desinstala um app do dispositivo.

Parâmetros
applicationID String: o ID do aplicativo Android a ser desinstalado

extraArgs String: argumentos extras opcionais a serem transmitidos. Consulte "adb shell pm install --help" 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 com sucesso.

Gera
InstallException se a desinstalação falhar.

uninstallPackage

public abstract String uninstallPackage (String packageName)

Desinstala um pacote do dispositivo.

Parâmetros
packageName String: o ID do aplicativo Android a ser desinstalado

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

Gera
InstallException se a desinstalação falhar.