DeviceManager

public class DeviceManager
extends Object implements IDeviceManager

java.lang.Object
   ↳ com.android.tradefed.device.DeviceManager


Resumo

Classes aninhadas

class DeviceManager.FastbootDevice

Representação de um dispositivo no modo fastboot (Fastboot mode). 

Campos

public static final String UNKNOWN_DISPLAY_STRING

Mostrar string para propriedades desconhecidas

protected DeviceMonitorMultiplexer mDvcMon

protected boolean mFastbootEnabled

Construtores públicos

DeviceManager()

O DeviceManager precisa ser recuperado do GlobalConfiguration.

Métodos públicos

void addAvailableDevice(IDevice stubDevice)
void addAvailableNativeDevice(IDevice stubDevice)
void addDeviceMonitor(IDeviceMonitor mon)

Adiciona um IDeviceMonitor

void addFastbootDevice(DeviceManager.FastbootDevice fastbootDevice)
void addFastbootListener(IDeviceManager.IFastbootListener listener)

Informa ao gerenciador que um listener tem interesse em mudanças de estado de inicialização rápida.

void addMonitoringTcpFastbootDevice(String serial, String fastboot_serial)

Adicionar um dispositivo ao monitor de inicialização rápida.

ITestDevice allocateDevice(IDeviceSelection options, boolean isTemporary)

Solicitar um dispositivo para teste que atenda a determinados critérios.

ITestDevice allocateDevice(IDeviceSelection options)

Solicitar um dispositivo para teste que atenda a determinados critérios.

ITestDevice allocateDevice()

Solicitar um dispositivo físico para testes

ITestDevice connectToTcpDevice(String ipAndPort)

Conectar a um dispositivo com adb-over-tcp

Esse método aloca um novo dispositivo, que precisa ser liberado por disconnectFromTcpDevice(com.android.tradefed.device.ITestDevice)

O ITestDevice retornado vai estar on-line, mas talvez não seja responsivo.

boolean disconnectFromTcpDevice(ITestDevice tcpDevice)

Desconecte de um dispositivo conectado por adb-over-tcp.

void displayDevicesInfo(PrintWriter stream, boolean includeStub)

Gera uma descrição fácil de usar com uma lista de dispositivos conhecidos, o estado deles e os valores das opções IDeviceSelection mais usadas.

CommandResult executeCmdOnAvailableDevice(String serial, String command, long timeout, TimeUnit timeUnit)

Um método auxiliar para executar o comando do shell no dispositivo disponível.

String executeGlobalAdbCommand(String... cmdArgs)

Executar um comando adb não direcionado a um dispositivo específico, por exemplo,

ITestDevice forceAllocateDevice(String serial)

Atribuir um dispositivo de forma rude, mesmo que ele não esteja disponível no momento.

void freeDevice(ITestDevice device, FreeDeviceState deviceState)

Devolver um dispositivo ao pool

As tentativas de devolver um dispositivo que não foi alocado anteriormente serão ignoradas.

String getAdbPath()

Retorna o caminho para o binário adb a ser usado.

String getAdbVersion()

Receba a versão do adb atualmente em uso pelo gerenciador de dispositivos.

DeviceDescriptor getDeviceDescriptor(String serial)

Retorna o DeviceDescriptor com o número de série fornecido.

String getFastbootPath()

Retorna o caminho para o binário do fastboot a ser usado.

void init(IDeviceSelection globalDeviceFilter, globalDeviceMonitors, IManagedTestDeviceFactory deviceFactory)

Inicializar o gerenciador de dispositivos.

void init(IDeviceSelection globalDeviceFilter, globalDeviceMonitors)

Inicializar o gerenciador de dispositivos.

void init()

Inicializar o gerenciador de dispositivos.

boolean isEmulator(String serial)

Determinar se o número de série fornecido representa um emulador

boolean isFileSystemMountCheckEnabled()

Retorna se devemos ou não verificar em NativeDeviceStateMonitor se o sistema de arquivos está montado corretamente.

boolean isNullDevice(String serial)

Determinar se o número de série fornecido representa um dispositivo nulo

void killEmulator(ITestDevice device)

Encerra o emulador.

void launchEmulator(ITestDevice device, long bootTimeout, IRunUtil runUtil, emulatorArgs)

Método auxiliar para iniciar o emulador.

listAllDevices(boolean shortDescriptor)

Retorna uma lista de DeviceDescriptors para todos os dispositivos conhecidos.

listAllDevices()

Retorna uma lista de DeviceDescriptors para todos os dispositivos conhecidos.

ITestDevice reconnectDeviceToTcp(ITestDevice usbDevice)

Um método auxiliar que muda o dispositivo USB especificado para o modo adb-over-tcp e se conecta a ele por connectToTcpDevice(String).

void removeDeviceMonitor(IDeviceMonitor mon)

Remove um IDeviceMonitor adicionado anteriormente.

void removeFastbootListener(IDeviceManager.IFastbootListener listener)

Informa ao gerenciador que um listener não está mais interessado em mudanças de estado de inicialização rápida.

void restartAdbBridge()

Reinicie (se stopAdbBridge() foi chamado) a ponte adb e os serviços dependem de conexões adb.

void stopAdbBridge()

A ponte adb e os serviços são interrompidos quando dependem de conexões adb.

void terminate()

Interrompe os serviços de monitoramento do dispositivo e encerra a biblioteca ddm.

void terminateDeviceMonitor()

Pare os monitores de dispositivo.

void terminateDeviceRecovery()

Para a linha de execução de recuperação do dispositivo.

void terminateHard(String reason)

Como terminateHard().

void terminateHard()

Como terminate(), mas tenta encerrar o adb à força.

boolean waitForFirstDeviceAdded(long timeout)

Aguarde até que o primeiro dispositivo físico seja conectado.

Campos

UNKNOWN_DISPLAY_STRING

public static final String UNKNOWN_DISPLAY_STRING

Mostrar string para propriedades desconhecidas

mDvcMon

protected DeviceMonitorMultiplexer mDvcMon

mFastbootEnabled

protected boolean mFastbootEnabled

Construtores públicos

DeviceManager

public DeviceManager ()

O DeviceManager precisa ser recuperado do GlobalConfiguration.

Métodos públicos

addAvailableDevice

public void addAvailableDevice (IDevice stubDevice)

Parâmetros
stubDevice IDevice

addAvailableNativeDevice

public void addAvailableNativeDevice (IDevice stubDevice)

Parâmetros
stubDevice IDevice

addDeviceMonitor

public void addDeviceMonitor (IDeviceMonitor mon)

Adiciona um IDeviceMonitor

Parâmetros
mon IDeviceMonitor

addFastbootDevice

public void addFastbootDevice (DeviceManager.FastbootDevice fastbootDevice)

Parâmetros
fastbootDevice DeviceManager.FastbootDevice

addFastbootListener

public void addFastbootListener (IDeviceManager.IFastbootListener listener)

Informa ao gerenciador que um listener está interessado em mudanças de estado de inicialização rápida.

No momento, um IDeviceManager só monitora dispositivos em inicialização rápida se houver um ou mais listeners ativos.

TODO: isso é um pouco hackeado, encontre uma solução melhor

addMonitoringTcpFastbootDevice

public void addMonitoringTcpFastbootDevice (String serial, 
                String fastboot_serial)

Adicionar um dispositivo ao monitor de inicialização rápida. O monitor fastboot vai usar "fastboot_serial" para se comunicar com o dispositivo.

Parâmetros
serial String: o número de série do dispositivo.

fastboot_serial String: o número de série do modo de inicialização rápida do dispositivo.

allocateDevice

public ITestDevice allocateDevice (IDeviceSelection options, 
                boolean isTemporary)

Solicitar um dispositivo para teste que atenda a determinados critérios.

Parâmetros
options IDeviceSelection: o IDeviceSelection que o dispositivo precisa atender.

isTemporary boolean: especifica se um NullDevice temporário precisa ser criado.

Retorna
ITestDevice um ITestDevice para testes ou null se não houver um disponível

allocateDevice

public ITestDevice allocateDevice (IDeviceSelection options)

Solicitar um dispositivo para teste que atenda a determinados critérios.

Parâmetros
options IDeviceSelection: o IDeviceSelection que o dispositivo precisa atender.

Retorna
ITestDevice um ITestDevice para testes ou null se não estiver disponível

allocateDevice

public ITestDevice allocateDevice ()

Solicitar um dispositivo físico para testes

Retorna
ITestDevice um ITestDevice para testes ou null se não houver um disponível

connectToTcpDevice

public ITestDevice connectToTcpDevice (String ipAndPort)

Conectar a um dispositivo com adb-over-tcp

Esse método aloca um novo dispositivo, que precisa ser liberado por disconnectFromTcpDevice(com.android.tradefed.device.ITestDevice)

O ITestDevice retornado vai estar on-line, mas talvez não seja responsivo.

A realização de uma ação, como uma reinicialização em um dispositivo conectado por TCP, vai interromper a conexão TCP com o dispositivo e resultar em um DeviceNotAvailableException.

Parâmetros
ipAndPort String: o endereço IP original e a porta do dispositivo a que se conectar

Retorna
ITestDevice o ITestDevice ou null se uma conexão TCP não puder ser formada

disconnectFromTcpDevice

public boolean disconnectFromTcpDevice (ITestDevice tcpDevice)

Desconecte de um dispositivo conectado a adb-over-tcp.

Muda o dispositivo de volta para o modo USB e o libera.

Parâmetros
tcpDevice ITestDevice: o dispositivo atualmente no modo TCP, alocado anteriormente por connectToTcpDevice(String)

Retorna
boolean true se a mudança para o modo USB foi bem-sucedida

displayDevicesInfo

public void displayDevicesInfo (PrintWriter stream, 
                boolean includeStub)

Gera uma descrição fácil de usar com uma lista de dispositivos conhecidos, o estado deles e os valores das opções IDeviceSelection mais usadas.

Parâmetros
stream PrintWriter: o ERROR(/PrintWriter) para gerar a descrição

includeStub boolean: se os dispositivos stub também serão mostrados.

executeCmdOnAvailableDevice

public CommandResult executeCmdOnAvailableDevice (String serial, 
                String command, 
                long timeout, 
                TimeUnit timeUnit)

Um método auxiliar para executar o comando do shell no dispositivo disponível.

Parâmetros
serial String: o número de série do dispositivo.

command String: o comando do shell.

timeout long: o tempo necessário para a conclusão do comando.

timeUnit TimeUnit: a unidade do tempo limite.

executeGlobalAdbCommand

public String executeGlobalAdbCommand (String... cmdArgs)

Executa um comando adb não direcionado a um dispositivo específico, por exemplo, "adb connect"

Retorna
String A saída padrão se o comando for bem-sucedido, caso contrário, será nula.

forceAllocateDevice

public ITestDevice forceAllocateDevice (String serial)

Atribuir um dispositivo de forma rude, mesmo que ele não esteja disponível no momento.

Não terá efeito se o dispositivo já estiver alocado.

Parâmetros
serial String: o número de série do dispositivo a ser alocado

Retorna
ITestDevice o ITestDevice ou null se não puder ser alocado

freeDevice

public void freeDevice (ITestDevice device, 
                FreeDeviceState deviceState)

Devolver um dispositivo ao pool

As tentativas de devolver um dispositivo que não foi alocado anteriormente serão ignoradas.

Parâmetros
device ITestDevice: o ITestDevice para liberar

deviceState FreeDeviceState: o FreeDeviceState. Usado para controlar se o dispositivo é retornado ao pool de dispositivos disponível.

getAdbPath

public String getAdbPath ()

Retorna o caminho para o binário adb a ser usado.

Retorna
String

getAdbVersion

public String getAdbVersion ()

Receba a versão do adb atualmente em uso pelo gerenciador de dispositivos.

Retorna
String

getDeviceDescriptor

public DeviceDescriptor getDeviceDescriptor (String serial)

Retorna o DeviceDescriptor com o número de série fornecido.

Parâmetros
serial String: número de série do dispositivo a ser recebido

Retorna
DeviceDescriptor o DeviceDescriptor do dispositivo selecionado ou nulo se o número de série não corresponder a um dispositivo conhecido.

getFastbootPath

public String getFastbootPath ()

Retorna o caminho para o binário do fastboot a ser usado.

Retorna
String

init

public void init (IDeviceSelection globalDeviceFilter, 
                 globalDeviceMonitors, 
                IManagedTestDeviceFactory deviceFactory)

Inicializar o gerenciador de dispositivos. Ele precisa ser chamado uma vez e apenas uma vez antes que outros métodos sejam chamados.

Parâmetros
globalDeviceFilter IDeviceSelection

globalDeviceMonitors

deviceFactory IManagedTestDeviceFactory

init

public void init (IDeviceSelection globalDeviceFilter, 
                 globalDeviceMonitors)

Inicializar o gerenciador de dispositivos. Ele precisa ser chamado uma vez e apenas uma vez antes que outros métodos sejam chamados.

Parâmetros
globalDeviceFilter IDeviceSelection: o filtro de dispositivo

globalDeviceMonitors

init

public void init ()

Inicializar o gerenciador de dispositivos. Ele precisa ser chamado uma vez e apenas uma vez antes que outros métodos sejam chamados.

isEmulator

public boolean isEmulator (String serial)

Determinar se o número de série fornecido representa um emulador

Parâmetros
serial String

Retorna
boolean

isFileSystemMountCheckEnabled

public boolean isFileSystemMountCheckEnabled ()

Retorna se devemos ou não verificar em NativeDeviceStateMonitor se o sistema de arquivos está montado corretamente.

Retorna
boolean

isNullDevice

public boolean isNullDevice (String serial)

Determinar se o número de série fornecido representa um dispositivo nulo

Parâmetros
serial String

Retorna
boolean

killEmulator

public void killEmulator (ITestDevice device)

Encerra o emulador.

Bloqueia até que o emulador desapareça do adb. Não terá efeito se o emulador já não estiver disponível.

Parâmetros
device ITestDevice: o ITestDevice que representa o emulador a ser encerrado

launchEmulator

public void launchEmulator (ITestDevice device, 
                long bootTimeout, 
                IRunUtil runUtil, 
                 emulatorArgs)

Método auxiliar para iniciar o emulador.

Inicia o emulador conforme especificado pelo autor da chamada.

Parâmetros
device ITestDevice: o marcador de posição ITestDevice que representa o dispositivo do emulador alocado

bootTimeout long: o tempo em ms para aguardar a inicialização do emulador

emulatorArgs : argumentos da linha de comando para iniciar o emulador

listAllDevices

public  listAllDevices (boolean shortDescriptor)

Retorna uma lista de DeviceDescriptors para todos os dispositivos conhecidos.

Parâmetros
shortDescriptor boolean: se os descritores devem ser limitados a informações mínimas

Retorna
uma lista de DeviceDescriptor para todos os dispositivos conhecidos

listAllDevices

public  listAllDevices ()

Retorna uma lista de DeviceDescriptors para todos os dispositivos conhecidos.

Retorna
uma lista de DeviceDescriptor para todos os dispositivos conhecidos

reconnectDeviceToTcp

public ITestDevice reconnectDeviceToTcp (ITestDevice usbDevice)

Um método auxiliar que muda o dispositivo USB especificado para o modo adb-over-tcp e se conecta a ele por connectToTcpDevice(String).

Parâmetros
usbDevice ITestDevice: o dispositivo está no modo USB

Retorna
ITestDevice o ITestDevice recém-alocado no modo TCP ou null, se não for possível formar uma conexão TCP

removeDeviceMonitor

public void removeDeviceMonitor (IDeviceMonitor mon)

Remove um IDeviceMonitor adicionado anteriormente. Não tem efeito se mon não tiver sido adicionado.

Parâmetros
mon IDeviceMonitor

removeFastbootListener

public void removeFastbootListener (IDeviceManager.IFastbootListener listener)

Informa ao gerenciador que um listener não está mais interessado em mudanças de estado de inicialização rápida.

restartAdbBridge

public void restartAdbBridge ()

Reinicie (se stopAdbBridge() foi chamado) a ponte adb e os serviços dependem de conexões adb.

stopAdbBridge

public void stopAdbBridge ()

A ponte adb e os serviços dependem das conexões adb.

encerrar

public void terminate ()

Interrompe os serviços de monitoramento do dispositivo e encerra a biblioteca ddm.

Ele precisa ser chamado após o encerramento do aplicativo.

terminateDeviceMonitor

public void terminateDeviceMonitor ()

Pare os monitores de dispositivo.

terminateDeviceRecovery

public void terminateDeviceRecovery ()

Para a linha de execução de recuperação do dispositivo.

terminateHard

public void terminateHard (String reason)

Como terminateHard().

Parâmetros
reason String: motivo opcional fornecido para a rescisão.

terminateHard

public void terminateHard ()

Como terminate(), mas tenta encerrar o adb à força.

waitForFirstDeviceAdded

public boolean waitForFirstDeviceAdded (long timeout)

Aguarde até que o primeiro dispositivo físico seja conectado. Se um dispositivo já estava conectado, ele vai retornar diretamente "True". Se nenhum dispositivo for adicionado, o método retornará "false" após o tempo limite.

Parâmetros
timeout long: tempo de espera em milissegundos antes de retornar falso.

Retorna
boolean