DeviceManager

public class DeviceManager
extends Object implements IDeviceManager

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


Resumen

Clases anidadas

class DeviceManager.FastbootDevice

Representación de un dispositivo en modo fastboot. 

Campos

public static final String UNKNOWN_DISPLAY_STRING

Cadena de visualización para propiedades desconocidas

protected DeviceMonitorMultiplexer mDvcMon

protected boolean mFastbootEnabled

Constructores públicos

DeviceManager()

Se debe recuperar DeviceManager desde GlobalConfiguration.

Métodos públicos

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

Agrega un IDeviceMonitor

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

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

void addMonitoringTcpFastbootDevice(String serial, String fastboot_serial)

Agrega un dispositivo al monitor de fastboot.

ITestDevice allocateDevice(IDeviceSelection options, boolean isTemporary)

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

ITestDevice allocateDevice(IDeviceSelection options)

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

ITestDevice allocateDevice()

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

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.

boolean disconnectFromTcpDevice(ITestDevice tcpDevice)

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

void displayDevicesInfo(PrintWriter stream, 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.

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.

String executeGlobalAdbCommand(String... cmdArgs)

Ejecuta un comando adb que no se oriente a un dispositivo en particular, p. ej.,

ITestDevice forceAllocateDevice(String serial)

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

void freeDevice(ITestDevice device, FreeDeviceState deviceState)

Cómo devolver un dispositivo al grupo

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

String getAdbPath()

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

String getAdbVersion()

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

DeviceDescriptor getDeviceDescriptor(String serial)

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

String getFastbootPath()

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

void init(IDeviceSelection globalDeviceFilter, globalDeviceMonitors, IManagedTestDeviceFactory deviceFactory)

Inicializa el Administrador de dispositivos.

void init(IDeviceSelection globalDeviceFilter, globalDeviceMonitors)

Inicializa el Administrador de dispositivos.

void init()

Inicializa el Administrador de dispositivos.

boolean isEmulator(String serial)

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

boolean isFileSystemMountCheckEnabled()

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

boolean isNullDevice(String serial)

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

void killEmulator(ITestDevice device)

Apaga el emulador determinado.

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

Método de ayuda para iniciar el emulador.

listAllDevices(boolean shortDescriptor)

Muestra una lista de DeviceDescriptors para todos los dispositivos conocidos.

listAllDevices()

Muestra una lista de DeviceDescriptors para todos los dispositivos conocidos.

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).

void removeDeviceMonitor(IDeviceMonitor mon)

Quita un IDeviceMonitor agregado anteriormente.

void removeFastbootListener(IDeviceManager.IFastbootListener listener)

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

void restartAdbBridge()

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

void stopAdbBridge()

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

void terminate()

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

void terminateDeviceMonitor()

Detén los monitores de dispositivos.

void terminateDeviceRecovery()

Detiene el subproceso de recuperación del dispositivo.

void terminateHard(String reason)

Similar a terminateHard().

void terminateHard()

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

boolean waitForFirstDeviceAdded(long timeout)

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

Campos

UNKNOWN_DISPLAY_STRING

public static final String UNKNOWN_DISPLAY_STRING

Cadena de visualización para propiedades desconocidas

mDvcMon

protected DeviceMonitorMultiplexer mDvcMon

mFastbootEnabled

protected boolean mFastbootEnabled

Constructores públicos

DeviceManager

public DeviceManager ()

Se debe recuperar DeviceManager desde 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)

Agrega un 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 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 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 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 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 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 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 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 void displayDevicesInfo (PrintWriter stream, 
                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
stream 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 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.

executeGlobalAdbCommand

public String executeGlobalAdbCommand (String... cmdArgs)

Ejecuta un comando adb que no se dirija a un dispositivo en particular, p. ej., "adb connect"

Muestra
String El resultado estándar si el comando se realiza correctamente, nulo de lo contrario.

forceAllocateDevice

public 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 void freeDevice (ITestDevice device, 
                FreeDeviceState deviceState)

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á.

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

getAdbPath

public String getAdbPath ()

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

Muestra
String

getAdbVersion

public String getAdbVersion ()

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

Muestra
String

getDeviceDescriptor

public 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 String getFastbootPath ()

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

Muestra
String

init

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

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

Parámetros
globalDeviceFilter IDeviceSelection

globalDeviceMonitors

deviceFactory IManagedTestDeviceFactory

init

public void init (IDeviceSelection globalDeviceFilter, 
                 globalDeviceMonitors)

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

Parámetros
globalDeviceFilter IDeviceSelection: El filtro de dispositivos

globalDeviceMonitors

init

public 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 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 boolean isNullDevice (String serial)

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

Parámetros
serial String

Muestra
boolean

killEmulator

public 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

launchEmulator

public 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

listAllDevices

public  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  listAllDevices ()

Muestra una lista de DeviceDescriptors para todos los dispositivos conocidos.

Muestra
una lista de DeviceDescriptor para todos los dispositivos conocidos

reconnectDeviceToTcp

public 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

removeDeviceMonitor

public void removeDeviceMonitor (IDeviceMonitor mon)

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

Parámetros
mon IDeviceMonitor

removeFastbootListener

public 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 void restartAdbBridge ()

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

stopAdbBridge

public void stopAdbBridge ()

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

finalizar

public 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 void terminateDeviceMonitor ()

Detén los monitores de dispositivos.

terminateDeviceRecovery

public 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 void terminateHard ()

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

waitForFirstDeviceAdded

public boolean waitForFirstDeviceAdded (long timeout)

Espera a que se conecte un primer dispositivo físico. Si un dispositivo estaba conectado antes, se muestra directamente como 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