NativeDeviceStateMonitor

public class NativeDeviceStateMonitor
extends Object implements IDeviceStateMonitor

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


Clase auxiliar para supervisar el estado de un IDevice sin compatibilidad con el framework.

Resumen

Constantes

long MAX_CHECK_POLL_TIME

int MAX_OP_TIME

Es el tiempo máximo de operación en ms para un comando "poll for responsiveness".

Campos

protected static final String PERM_DENIED_ERROR_PATTERN

Constructores públicos

NativeDeviceStateMonitor(IDeviceManager mgr, IDevice device, boolean fastbootEnabled)

Métodos públicos

void attachFinalState(TestDeviceState finalState)

Adjunta un estado final para abortar waitForDeviceState si se alcanza.

TestDeviceState getDeviceState()

Obtiene el estado del dispositivo.

String getFastbootSerialNumber()

Obtiene el número de serie del modo fastboot.

String getMountPoint(String mountName)

Muestra un punto de activación.

String getSerialNumber()

Obtiene el número de serie del dispositivo.

boolean isAdbTcp()

void setDefaultAvailableTimeout(long timeoutMs)

Establece el tiempo en ms para esperar a que un dispositivo esté disponible en waitForDeviceAvailable().

void setDefaultOnlineTimeout(long timeoutMs)

Establece el tiempo en ms para esperar a que un dispositivo esté en línea en waitForDeviceOnline().

void setFastbootSerialNumber(String serial)

Establece el número de serie del modo fastboot.

void setIDevice(IDevice newDevice)

Actualiza el dispositivo iOS actual.

void setState(TestDeviceState deviceState)

Establece el estado actual del dispositivo.

boolean waitForBootComplete(long waitTime)

Se bloquea hasta que se establezca la marca de inicio completado del dispositivo

IDevice waitForDeviceAvailable(long waitTime)

Espera a que el dispositivo sea responsivo y esté disponible para realizar pruebas.

IDevice waitForDeviceAvailable()

Espera a que el dispositivo sea responsivo y esté disponible para realizar pruebas.

IDevice waitForDeviceAvailableInRecoverPath(long waitTime)

Es una variante especial de waitForDeviceAvailable(long) a la que se llamará durante la ruta de recuperación para adaptar el control.

boolean waitForDeviceBootloader(long time)

Espera a que el dispositivo esté en el bootloader.

void waitForDeviceBootloaderStateUpdate()

Espera a que se actualice el estado del bootloader del dispositivo.

boolean waitForDeviceFastbootd(String fastbootPath, long time)

Espera a que el dispositivo esté en fastbootd.

IDevice waitForDeviceInRecovery()

Espera a que el dispositivo esté en Modo de recuperación con el tiempo de espera de inicio estándar.

boolean waitForDeviceInRecovery(long waitTime)

Espera a que el dispositivo esté en el estado "adb recovery".

boolean waitForDeviceInSideload(long waitTime)

Espera a que el dispositivo esté en el estado "adb sideload".

boolean waitForDeviceNotAvailable(long waitTime)

Espera a que el dispositivo no esté disponible.

IDevice waitForDeviceOnline()

Espera a que el dispositivo esté en línea con el tiempo de espera de inicio estándar.

IDevice waitForDeviceOnline(long waitTime)

Espera a que el dispositivo esté en línea.

boolean waitForDeviceShell(long waitTime)

Espera a que el dispositivo responda a un comando básico del shell de adb.

Métodos protegidos

CollectingOutputReceiver createOutputReceiver()

Expuesto para realizar pruebas

long getCheckPollTime()

Se expone para pruebas

long getCurrentTime()

Se expone para pruebas

IDevice getIDevice()
boolean postOnlineCheck(long waitTime)

Verificaciones adicionales que se realizarán en un dispositivo en línea

boolean waitForStoreMount(long waitTime)

Espera a que se active el almacenamiento externo del dispositivo.

Constantes

HORA DE LA POLLA MAX_CHECK

protected static final long MAX_CHECK_POLL_TIME

Valor constante: 3000 (0x0000000000000bb8)

MAX_OP_TIME

protected static final int MAX_OP_TIME

Es el tiempo máximo de operación en ms para un comando "poll for responsiveness".

Valor constante: 10000 (0x00002710)

Campos

PERM_DENIED_ERROR_PATTERN

protected static final String PERM_DENIED_ERROR_PATTERN

Constructores públicos

Supervisión de estado de dispositivos nativos

public NativeDeviceStateMonitor (IDeviceManager mgr, 
                IDevice device, 
                boolean fastbootEnabled)

Parámetros
mgr IDeviceManager

device IDevice

fastbootEnabled boolean

Métodos públicos

adjuntoFinalState

public void attachFinalState (TestDeviceState finalState)

Adjunta un estado final para abortar waitForDeviceState si se alcanza.

Parámetros
finalState TestDeviceState

getDeviceState

public TestDeviceState getDeviceState ()

Obtiene el estado del dispositivo.

Muestra
TestDeviceState el TestDeviceState del dispositivo

getFastbootSerialNumber

public String getFastbootSerialNumber ()

Obtiene el número de serie del modo fastboot.

Muestra
String

getMountPoint

public String getMountPoint (String mountName)

Muestra un punto de activación.

Consulta al dispositivo directamente si la información almacenada en caché en IDevice no está disponible.

TODO: mover este comportamiento a IDevice#getMountPoint(String)

Parámetros
mountName String: Es el nombre del punto de activación.

Muestra
String el punto de activación o null

Arroja
DeviceNotAvailableException

getSerialNumber

public String getSerialNumber ()

Obtiene el número de serie del dispositivo.

Muestra
String

isAdbTcp

public boolean isAdbTcp ()

Muestra
boolean

setDefaultAvailableTimeout

public void setDefaultAvailableTimeout (long timeoutMs)

Establece el tiempo en milisegundos de espera para que un dispositivo esté disponible en waitForDeviceAvailable().

Parámetros
timeoutMs long

setDefaultOnlineTimeout

public void setDefaultOnlineTimeout (long timeoutMs)

Establece el tiempo en ms para esperar a que un dispositivo esté en línea en waitForDeviceOnline().

Parámetros
timeoutMs long

setFastbootSerialNumber

public void setFastbootSerialNumber (String serial)

Establece el número de serie del modo fastboot.

Parámetros
serial String

setIDevice

public void setIDevice (IDevice newDevice)

Actualiza el dispositivo iOS actual.

setState

public void setState (TestDeviceState deviceState)

Establece el estado actual del dispositivo.

waitForBootComplete

public boolean waitForBootComplete (long waitTime)

Bloquea hasta que se establezca la marca de inicio completo del dispositivo.

Parámetros
waitTime long: Es la cantidad en ms que se debe esperar.

Muestra
boolean

waitForDeviceAvailable

public IDevice waitForDeviceAvailable (long waitTime)

Espera a que el dispositivo sea responsivo y esté disponible para realizar pruebas. Actualmente, esto significa que el administrador de paquetes y el almacenamiento externo están disponibles.

Parámetros
waitTime long: Es el tiempo en ms que se debe esperar.

Muestra
IDevice el IDevice si el dispositivo se conecta a Internet antes de que venza el tiempo. null en caso contrario.

waitForDeviceAvailable

public IDevice waitForDeviceAvailable ()

Espera a que el dispositivo sea responsivo y esté disponible para realizar pruebas.

Equivalente a waitForDeviceAvailable(long), pero usa el tiempo de espera de inicio predeterminado del dispositivo.

Muestra
IDevice el IDevice si el dispositivo se conecta a Internet antes de que venza el tiempo. null en caso contrario.

waitForDeviceAvailableInRecoverPath

public IDevice waitForDeviceAvailableInRecoverPath (long waitTime)

Es una variante especial de waitForDeviceAvailable(long) a la que se llamará durante la ruta de recuperación para adaptar el manejo.

Parámetros
waitTime long

Muestra
IDevice

Arroja
DeviceNotAvailableException

waitForDeviceBootloader

public boolean waitForDeviceBootloader (long time)

Espera a que el dispositivo esté en el bootloader.

Parámetros
time long: El tiempo máximo en ms que se esperará

Muestra
boolean true si el dispositivo está en el bootloader antes de que venza el tiempo

waitForDeviceBootloaderStateUpdate

public void waitForDeviceBootloaderStateUpdate ()

Espera a que se actualice el estado del bootloader del dispositivo.

waitForDeviceFastbootd

public boolean waitForDeviceFastbootd (String fastbootPath, 
                long time)

Espera a que el dispositivo esté en fastbootd.

Parámetros
fastbootPath String: Es la ruta de acceso del objeto binario de fastboot que se usará.

time long: Es el tiempo máximo en ms que se debe esperar.

Muestra
boolean true si el dispositivo está en fastbootd antes de que venza el tiempo

waitForDeviceInRecovery

public IDevice waitForDeviceInRecovery ()

Espera a que el dispositivo esté en modo de recuperación con el tiempo de espera de inicio estándar.

Muestra
IDevice el IDevice si el dispositivo se convierte en la recuperación antes de que finalice el tiempo. null en caso contrario.

waitForDeviceInRecovery

public boolean waitForDeviceInRecovery (long waitTime)

Espera a que el dispositivo esté en el estado "adb recovery".

Parámetros
waitTime long: El tiempo máximo en ms que se esperará

Muestra
boolean Es verdadero si el dispositivo está en modo de recuperación antes del tiempo de espera; de lo contrario, es falso.

waitForDeviceInSideload

public boolean waitForDeviceInSideload (long waitTime)

Espera a que el dispositivo esté en el estado "adb sideload".

Parámetros
waitTime long: El tiempo máximo en ms que se esperará

Muestra
boolean Es verdadero si el dispositivo está en una transferencia antes de que se agote el tiempo de espera. De lo contrario, es falso.

waitForDeviceNotAvailable

public boolean waitForDeviceNotAvailable (long waitTime)

Espera a que el dispositivo no esté disponible.

Parámetros
waitTime long: El tiempo máximo en ms que se esperará

Muestra
boolean true si el dispositivo deja de estar disponible

waitForDeviceOnline

public IDevice waitForDeviceOnline ()

Espera a que el dispositivo esté en línea con el tiempo de espera de inicio estándar.

Nota: Este método se mostrará una vez que el dispositivo sea visible a través de DDMS. Esto no garantiza que el dispositivo realmente responda a los comandos adb; en su lugar, usa waitForDeviceAvailable().

Muestra
IDevice el IDevice si el dispositivo se conecta a Internet antes de que venza el tiempo. null de lo contrario.

waitForDeviceOnline

public IDevice waitForDeviceOnline (long waitTime)

Espera a que el dispositivo esté en línea.

Nota: Este método se mostrará una vez que el dispositivo sea visible a través de DDMS. No garantiza que el dispositivo responda a los comandos de adb. En su lugar, usa waitForDeviceAvailable().

Parámetros
waitTime long: El tiempo máximo en ms que se esperará

Muestra
IDevice el IDevice si el dispositivo se conecta a Internet antes de que venza el tiempo. null en caso contrario.

waitForDeviceShell

public boolean waitForDeviceShell (long waitTime)

Espera a que el dispositivo responda a un comando shell adb básico.

Parámetros
waitTime long: Es el tiempo en ms que se debe esperar.

Muestra
boolean Es true si el dispositivo responde antes de que transcurra la waitTime.

Métodos protegidos

createOutputReceiver

protected CollectingOutputReceiver createOutputReceiver ()

Expuesto para realizar pruebas

Muestra
CollectingOutputReceiver CollectingOutputReceiver

getCheckPollTime

protected long getCheckPollTime ()

Se expone para pruebas

Muestra
long

getCurrentTime

protected long getCurrentTime ()

Se expone para pruebas

Muestra
long

getIDevice

protected IDevice getIDevice ()

Muestra
IDevice IDevice se asocia con el monitor de estado.

postOnlineCheck

protected boolean postOnlineCheck (long waitTime)

Verificaciones adicionales que se realizarán en un dispositivo en línea

Parámetros
waitTime long: Es el tiempo en ms que se espera antes de renunciar.

Muestra
boolean true si las verificaciones se realizan correctamente antes de que venza waitTime. false por lo demás

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

waitForStoreMount

protected boolean waitForStoreMount (long waitTime)

Espera a que se active el almacenamiento externo del dispositivo.

Parámetros
waitTime long: Es el tiempo en ms que se espera antes de renunciar.

Muestra
boolean true si la tienda externa se activa antes de que venza waitTime. false de lo contrario

Arroja
DeviceNotAvailableException