DeviceMonitor

public final class DeviceMonitor
extends Object implements ClientTracker

java.lang.Object
   ↳ com.android.tradefed.device.server.DeviceMonitor


O DeviceMonitor monitora dispositivos conectados ao adb.

Em uma linha de execução, ele executa o DeviceListMonitorTask. Isso estabelece uma conexão de soquete com o host adb e emite um ERROR(/DeviceListMonitorTask.ADB_TRACK_DEVICES_COMMAND). Em seguida, ele monitora esse soquete para todas as mudanças na conexão e no estado do dispositivo. Se ::getClientSupport não estiver ativado, o DeviceClientMonitorTask não será executado, e os dispositivos não serão registrados.

Em outra linha de execução, ele executa o DeviceClientMonitorTask. Isso estabelece uma conexão de soquete com o host adb por dispositivo registrado e emite um ERROR(/DeviceClientMonitorTask.ADB_TRACK_JDWP_COMMAND). Nessa conexão, ele monitora os clientes ativos no dispositivo. Observação: uma única linha de execução monitora conexões jdwp de todos os dispositivos. As diferentes conexões de soquete com o adb (uma por dispositivo) são multiplexadas em um único seletor.

Resumo

Classes aninhadas

class DeviceMonitor.DeviceListComparisonResult

 

Construtores públicos

DeviceMonitor(AndroidDebugBridge server)

Cria um objeto DeviceMonitor e o vincula ao objeto AndroidDebugBridge em execução.

Métodos públicos

int getConnectionAttemptCount()
IDevice[] getDevices()

Retorna os dispositivos.

int getRestartAttemptCount()
boolean hasInitialDeviceList()
boolean isMonitoring()

Retorna se o monitor está conectado ao servidor de ponte de depuração.

void start()

Inicia o monitoramento.

void stop()

Interrompe o monitoramento.

void trackClientToDropAndReopen(ClientImpl client)

Callback para indicar que um cliente foi descartado, mas uma tentativa deve ser feita para reabrir a conexão com ele.

void trackDeviceToDropAndReopen(DeviceImpl device)

Callback para indicar que um dispositivo foi solto.

void trackDisconnectedClient(ClientImpl client)

Callback para quando um cliente é desconectado.

Construtores públicos

DeviceMonitor

public DeviceMonitor (AndroidDebugBridge server)

Cria um objeto DeviceMonitor e o vincula ao objeto AndroidDebugBridge em execução.

Parâmetros
server AndroidDebugBridge: o AndroidDebugBridge em execução.

Métodos públicos

getConnectionAttemptCount

public int getConnectionAttemptCount ()

Retorna
int

getDevices

public IDevice[] getDevices ()

Retorna os dispositivos.

Retorna
IDevice[]

getRestartAttemptCount

public int getRestartAttemptCount ()

Retorna
int

hasInitialDeviceList

public boolean hasInitialDeviceList ()

Retorna
boolean

isMonitoring

public boolean isMonitoring ()

Retorna se o monitor está conectado ao servidor de ponte de depuração.

Retorna
boolean

start

public void start ()

Inicia o monitoramento.

parar

public void stop ()

Interrompe o monitoramento.

trackClientToDropAndReopen

public void trackClientToDropAndReopen (ClientImpl client)

Callback para indicar que um cliente foi descartado, mas uma tentativa deve ser feita para reabrir a conexão com ele.

Parâmetros
client ClientImpl: que foi descartado.

trackDeviceToDropAndReopen

public void trackDeviceToDropAndReopen (DeviceImpl device)

Callback para indicar que um dispositivo foi solto. Tente reabrir a conexão com o dispositivo e restabelecer a conexão com qualquer um dos clientes em execução nele.

Parâmetros
device DeviceImpl: que foi descartado.

trackDisconnectedClient

public void trackDisconnectedClient (ClientImpl client)

Callback para quando um cliente é desconectado. Esse callback tem como objetivo notificar todas as linhas de execução que mantêm um registro em um soquete de clientes para liberá-lo.

Parâmetros
client ClientImpl: que foi descartado