IDeviceManager

public interface IDeviceManager

com.android.tradefed.device.IDeviceManager


Es la interfaz para administrar el conjunto de dispositivos disponibles para las pruebas.

Resumen

Clases anidadas

interface IDeviceManager.IFastbootListener

Un objeto de escucha para los cambios de estado de Fastboot. 

Métodos públicos

abstract void addDeviceMonitor(IDeviceMonitor mon)

Agrega un IDeviceMonitor

abstract void addFastbootListener(IDeviceManager.IFastbootListener listener)

Informa al administrador que a un objeto de escucha le interesan los cambios de estado de Fastboot.

abstract void addMonitoringTcpFastbootDevice(String serial, String fastboot_serial)

Agrega un dispositivo al monitor de fastboot.

abstract ITestDevice allocateDevice(IDeviceSelection options, boolean isTemporary)

Solicita un dispositivo para realizar pruebas que cumpla con ciertos criterios.

abstract ITestDevice allocateDevice(IDeviceSelection options)

Solicita un dispositivo para realizar pruebas que cumpla con ciertos criterios.

abstract ITestDevice allocateDevice()

Cómo solicitar un dispositivo físico para realizar pruebas

abstract ITestDevice connectToTcpDevice(String ipAndPort)

Cómo conectarse a un dispositivo con adb-over-tcp

Este método asigna un dispositivo nuevo, que, en última instancia, se debe liberar a través de disconnectFromTcpDevice(com.android.tradefed.device.ITestDevice).

El ITestDevice que se muestra estará en línea, pero es posible que no responda.

abstract boolean disconnectFromTcpDevice(ITestDevice tcpDevice)

Desconecta un dispositivo conectado a través de adb-over-tcp.

abstract void displayDevicesInfo(PrintWriter printWriter, boolean includeStub)

Muestra una descripción fácil de usar que contiene una lista de dispositivos conocidos, su estado y los valores de las opciones de IDeviceSelection que se usan con mayor frecuencia.

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

Es un método auxiliar para ejecutar el comando de shell en el dispositivo disponible.

abstract ITestDevice forceAllocateDevice(String serial)

Asignar un dispositivo de forma grosera, incluso si no está disponible en ese momento

abstract void freeDevice(ITestDevice device, FreeDeviceState state)

Cómo devolver un dispositivo al grupo

Se ignorarán los intentos de devolver un dispositivo que no se haya asignado anteriormente.

abstract String getAdbPath()

Muestra la ruta de acceso al objeto binario adb que se usará.

abstract String getAdbVersion()

Obtén la versión de adb que usa actualmente el Administrador de dispositivos.

abstract DeviceDescriptor getDeviceDescriptor(String serial)

Muestra el DeviceDescriptor con el número de serie determinado.

abstract String getFastbootPath()

Muestra la ruta de acceso al objeto binario de fastboot que se usará.

abstract void init(IDeviceSelection globalDeviceFilter, deviceMonitors)

Inicializa el administrador de dispositivos con un filtro de dispositivos.

abstract void init()

Inicializa el Administrador de dispositivos.

abstract boolean isEmulator(String serial)

Determina si un número de serie determinado representa un emulador

default boolean isFileSystemMountCheckEnabled()

Muestra si debemos verificar en NativeDeviceStateMonitor si el sistema de archivos está activado correctamente.

abstract boolean isNullDevice(String serial)

Determina si un número de serie determinado representa un dispositivo nulo

abstract void killEmulator(ITestDevice device)

Apaga el emulador determinado.

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

Método de ayuda para iniciar el emulador.

abstract listAllDevices(boolean shortDescriptor)

Muestra una lista de DeviceDescriptors para todos los dispositivos conocidos.

abstract listAllDevices()

Muestra una lista de DeviceDescriptors para todos los dispositivos conocidos.

abstract ITestDevice reconnectDeviceToTcp(ITestDevice usbDevice)

Es un método auxiliar que cambia el dispositivo USB determinado al modo adb-over-tcp y, luego, se conecta a él a través de connectToTcpDevice(String).

abstract void removeDeviceMonitor(IDeviceMonitor mon)

Quita un IDeviceMonitor agregado anteriormente.

abstract void removeFastbootListener(IDeviceManager.IFastbootListener listener)

Informa al administrador que a un objeto de escucha ya no le interesan los cambios de estado de Fastboot.

abstract void restartAdbBridge()

Reinicia (si se llamó a stopAdbBridge()) el puente de adb y los servicios dependen de las conexiones de adb.

abstract void stopAdbBridge()

Detener el puente de adb y los servicios dependen de las conexiones de adb.

abstract void terminate()

Detiene los servicios de supervisión de dispositivos y finaliza la biblioteca de ddm.

abstract void terminateDeviceMonitor()

Detén los monitores de dispositivos.

abstract void terminateDeviceRecovery()

Detiene el subproceso de recuperación del dispositivo.

default void terminateHard(String reason)

Similar a terminateHard().

abstract void terminateHard()

Es similar a terminate(), pero también intenta cerrar adb de forma forzosa.

abstract boolean waitForFirstDeviceAdded(long timeout)

Espera a que se conecte un primer dispositivo físico.

Métodos públicos

addDeviceMonitor

public abstract void addDeviceMonitor (IDeviceMonitor mon)

Agrega un IDeviceMonitor

Parámetros
mon IDeviceMonitor

addFastbootListener

public abstract void addFastbootListener (IDeviceManager.IFastbootListener listener)

Informa al administrador que a un objeto de escucha le interesan los cambios de estado de Fastboot.

Actualmente, un IDeviceManager solo supervisará los dispositivos en fastboot si hay uno o más objetos de escucha activos.

TODO: Esta es una solución alternativa. Encuentra una mejor.

addMonitoringTcpFastbootDevice

public abstract void addMonitoringTcpFastbootDevice (String serial, 
                String fastboot_serial)

Agrega un dispositivo al monitor de fastboot. El monitor de fastboot usará "fastboot_serial" para comunicarse con el dispositivo.

Parámetros
serial String: Es el número de serie del dispositivo.

fastboot_serial String: Es el número de serie del modo de arranque rápido del dispositivo.

allocateDevice

public abstract ITestDevice allocateDevice (IDeviceSelection options, 
                boolean isTemporary)

Solicita un dispositivo para realizar pruebas que cumpla con ciertos criterios.

Parámetros
options IDeviceSelection: El IDeviceSelection que debe cumplir el dispositivo.

isTemporary boolean: Indica si se debe crear o no un NullDevice temporal.

Muestra
ITestDevice Un ITestDevice para pruebas o null si no hay uno disponible

allocateDevice

public abstract ITestDevice allocateDevice (IDeviceSelection options)

Solicita un dispositivo para realizar pruebas que cumpla con ciertos criterios.

Parámetros
options IDeviceSelection: El IDeviceSelection que debe cumplir el dispositivo.

Muestra
ITestDevice Un ITestDevice para pruebas o null si no hay uno disponible

allocateDevice

public abstract ITestDevice allocateDevice ()

Cómo solicitar un dispositivo físico para realizar pruebas

Muestra
ITestDevice Un ITestDevice para pruebas o null si no hay uno disponible

connectToTcpDevice

public abstract ITestDevice connectToTcpDevice (String ipAndPort)

Cómo conectarse a un dispositivo con adb-over-tcp

Este método asigna un dispositivo nuevo, que, en última instancia, se debe liberar a través de disconnectFromTcpDevice(com.android.tradefed.device.ITestDevice).

El ITestDevice que se muestra estará en línea, pero es posible que no responda.

Ten en cuenta que realizar acciones como un reinicio en un dispositivo conectado a TCP cortará la conexión TCP con el dispositivo y generará un DeviceNotAvailableException.

Parámetros
ipAndPort String: La dirección IP y el puerto originales del dispositivo al que te quieres conectar

Muestra
ITestDevice ITestDevice o null si no se pudo establecer una conexión TCP

disconnectFromTcpDevice

public abstract boolean disconnectFromTcpDevice (ITestDevice tcpDevice)

Desconecta un dispositivo conectado a través de adb-over-tcp.

Vuelve a cambiar el dispositivo al modo USB y lo libera.

Parámetros
tcpDevice ITestDevice: El dispositivo que se encuentra actualmente en modo TCP, asignado anteriormente a través de connectToTcpDevice(String)

Muestra
boolean true si el cambio al modo USB se realizó correctamente

displayDevicesInfo

public abstract void displayDevicesInfo (PrintWriter printWriter, 
                boolean includeStub)

Muestra una descripción fácil de usar que contiene una lista de dispositivos conocidos, su estado y los valores de las opciones de IDeviceSelection que se usan con mayor frecuencia.

Parámetros
printWriter PrintWriter: Es el ERROR(/PrintWriter) al que se enviará la descripción.

includeStub boolean: Indica si también se deben mostrar dispositivos stub.

executeCmdOnAvailableDevice

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

Es un método auxiliar para ejecutar el comando de shell en el dispositivo disponible.

Parámetros
serial String: Es el número de serie del dispositivo.

command String: El comando de shell.

timeout long: Es la cantidad de tiempo que tarda en completarse el comando.

timeUnit TimeUnit: Es la unidad del tiempo de espera.

Muestra
CommandResult Un objeto CommandResult.

forceAllocateDevice

public abstract ITestDevice forceAllocateDevice (String serial)

Asignar un dispositivo de forma grosera, incluso si no está disponible en ese momento

No tendrá efecto si el dispositivo ya está asignado.

Parámetros
serial String: Es el número de serie del dispositivo que se asignará.

Muestra
ITestDevice el ITestDevice o null si no se pudo asignar

freeDevice

public abstract void freeDevice (ITestDevice device, 
                FreeDeviceState state)

Cómo devolver un dispositivo al grupo

Se ignorarán los intentos de devolver un dispositivo que no se haya asignado anteriormente.

Parámetros
device ITestDevice: Es el ITestDevice que se liberará.

state FreeDeviceState: El FreeDeviceState. Se usa para controlar si el dispositivo se devuelve al grupo de dispositivos disponibles.

getAdbPath

public abstract String getAdbPath ()

Muestra la ruta de acceso al objeto binario adb que se usará.

Muestra
String

getAdbVersion

public abstract String getAdbVersion ()

Obtén la versión de adb que usa actualmente el Administrador de dispositivos.

Muestra
String

getDeviceDescriptor

public abstract DeviceDescriptor getDeviceDescriptor (String serial)

Muestra el DeviceDescriptor con el número de serie determinado.

Parámetros
serial String: Es el número de serie que debe obtener el dispositivo.

Muestra
DeviceDescriptor el DeviceDescriptor del dispositivo seleccionado o nulo si el número de serie no coincide con un dispositivo conocido

getFastbootPath

public abstract String getFastbootPath ()

Muestra la ruta de acceso al objeto binario de fastboot que se usará.

Muestra
String

init

public abstract void init (IDeviceSelection globalDeviceFilter, 
                 deviceMonitors)

Inicializa el administrador de dispositivos con un filtro de dispositivos. Este filtro se puede usar para indicarle al DeviceManager que ignore ciertos dispositivos conectados.

Parámetros
globalDeviceFilter IDeviceSelection: El filtro de dispositivos

deviceMonitors

init

public abstract void init ()

Inicializa el Administrador de dispositivos. Se debe llamar una vez y solo una vez antes de llamar a cualquier otro método.

isEmulator

public abstract boolean isEmulator (String serial)

Determina si un número de serie determinado representa un emulador

Parámetros
serial String

Muestra
boolean

isFileSystemMountCheckEnabled

public boolean isFileSystemMountCheckEnabled ()

Muestra si debemos verificar en NativeDeviceStateMonitor si el sistema de archivos está activado correctamente.

Muestra
boolean

isNullDevice

public abstract boolean isNullDevice (String serial)

Determina si un número de serie determinado representa un dispositivo nulo

Parámetros
serial String

Muestra
boolean

killEmulator

public abstract void killEmulator (ITestDevice device)

Apaga el emulador determinado.

Bloquea hasta que el emulador desaparezca de adb. No tendrá efecto si el emulador ya no está disponible.

Parámetros
device ITestDevice: El ITestDevice que representa el emulador que se cerrará

Arroja
DeviceNotAvailableException si el emulador no se cierra

launchEmulator

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

Método de ayuda para iniciar el emulador.

Iniciará el emulador como lo especifique el llamador.

Parámetros
device ITestDevice: El marcador de posición ITestDevice que representa el dispositivo del emulador asignado

bootTimeout long: Es el tiempo en ms que se espera para que se inicie el emulador.

emulatorArgs : Argumentos de línea de comandos para iniciar el emulador

Arroja
DeviceNotAvailableException Si el emulador no se inicia o no se conecta a Internet

listAllDevices

public abstract  listAllDevices (boolean shortDescriptor)

Muestra una lista de DeviceDescriptors para todos los dispositivos conocidos.

Parámetros
shortDescriptor boolean: Indica si se deben limitar los descriptores a la información mínima.

Muestra
una lista de DeviceDescriptor para todos los dispositivos conocidos

listAllDevices

public abstract  listAllDevices ()

Muestra una lista de DeviceDescriptors para todos los dispositivos conocidos.

Muestra
una lista de DeviceDescriptor para todos los dispositivos conocidos

reconnectDeviceToTcp

public abstract ITestDevice reconnectDeviceToTcp (ITestDevice usbDevice)

Es un método auxiliar que cambia el dispositivo USB determinado al modo adb-over-tcp y, luego, se conecta a él a través de connectToTcpDevice(String).

Parámetros
usbDevice ITestDevice: El dispositivo está actualmente en modo USB.

Muestra
ITestDevice el ITestDevice asignado recientemente en modo TCP o null si no se pudo formar una conexión TCP

Arroja
DeviceNotAvailableException si se perdió la conexión con usbDevice y no se pudo recuperar

removeDeviceMonitor

public abstract void removeDeviceMonitor (IDeviceMonitor mon)

Quita un IDeviceMonitor agregado anteriormente. No tiene efecto si no se agregó mon.

Parámetros
mon IDeviceMonitor

removeFastbootListener

public abstract void removeFastbootListener (IDeviceManager.IFastbootListener listener)

Informa al administrador que a un objeto de escucha ya no le interesan los cambios de estado de Fastboot.

restartAdbBridge

public abstract void restartAdbBridge ()

Reinicia (si se llamó a stopAdbBridge()) el puente de adb y los servicios dependen de las conexiones de adb.

stopAdbBridge

public abstract void stopAdbBridge ()

Detener el puente de adb y los servicios dependen de las conexiones de adb.

finalizar

public abstract void terminate ()

Detiene los servicios de supervisión de dispositivos y finaliza la biblioteca de ddm.

Se debe llamar a esta función cuando se finaliza la aplicación.

terminateDeviceMonitor

public abstract void terminateDeviceMonitor ()

Detén los monitores de dispositivos.

terminateDeviceRecovery

public abstract void terminateDeviceRecovery ()

Detiene el subproceso de recuperación del dispositivo.

terminateHard

public void terminateHard (String reason)

Similar a terminateHard().

Parámetros
reason String: Es el motivo opcional que se indica para la rescisión.

terminateHard

public abstract void terminateHard ()

Es similar a terminate(), pero también intenta cerrar adb de forma forzosa.

waitForFirstDeviceAdded

public abstract boolean waitForFirstDeviceAdded (long timeout)

Espera a que se conecte un primer dispositivo físico. Si un dispositivo estaba conectado antes, se muestra directamente Verdadero. Si no se agregó ningún dispositivo, se muestra un valor falso después del tiempo de espera.

Parámetros
timeout long: Es el tiempo de espera en milisegundos antes de mostrar un valor falso.

Muestra
boolean