DeviceMonitor

public final class DeviceMonitor
extends Object implements ClientTracker

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


DeviceMonitor monitora i dispositivi collegati ad ADB.

Su un thread, esegue DeviceListMonitorTask. In questo modo viene stabilita una connessione socket all'host adb e viene emesso un ERROR(/DeviceListMonitorTask.ADB_TRACK_DEVICES_COMMAND). Successivamente, monitora questo socket per tutte le modifiche relative alla connessione e allo stato del dispositivo. Se ::getClientSupport non è attivato, DeviceClientMonitorTask non viene eseguito e i dispositivi non vengono registrati.

Su un altro thread viene eseguita l'attività DeviceClientMonitorTask. In questo modo viene stabilita una connessione socket all'host adb per dispositivo registrato e viene emesso un ERROR(/DeviceClientMonitorTask.ADB_TRACK_JDWP_COMMAND). Su questa connessione, monitora i client attivi sul dispositivo. Nota: un singolo thread monitora le connessioni JDWP da tutti i dispositivi. Le diverse connessioni socket ad ADB (una per dispositivo) vengono multiplexate su un unico selettore.

Riepilogo

Classi nidificate

class DeviceMonitor.DeviceListComparisonResult

 

Costruttori pubblici

DeviceMonitor(AndroidDebugBridge server)

Crea un nuovo oggetto DeviceMonitor e lo collega all'oggetto AndroidDebugBridge in esecuzione.

Metodi pubblici

int getConnectionAttemptCount()
IDevice[] getDevices()

Restituisce i dispositivi.

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

Restituisce un valore che indica se il monitor è attualmente connesso al server del bridge di debug.

void start()

Avvia il monitoraggio.

void stop()

Interrompe il monitoraggio.

void trackClientToDropAndReopen(ClientImpl client)

Callback per indicare che un client è stato abbandonato, ma deve essere effettuato un tentativo di riaprire la connessione con il client.

void trackDeviceToDropAndReopen(DeviceImpl device)

Callback per indicare che un dispositivo è stato lasciato cadere.

void trackDisconnectedClient(ClientImpl client)

Callback chiamato quando un client viene disconnesso.

Costruttori pubblici

DeviceMonitor

public DeviceMonitor (AndroidDebugBridge server)

Crea un nuovo oggetto DeviceMonitor e lo collega all'oggetto AndroidDebugBridge in esecuzione.

Parametri
server AndroidDebugBridge: la corsa AndroidDebugBridge.

Metodi pubblici

getConnectionAttemptCount

public int getConnectionAttemptCount ()

Ritorni
int

getDevices

public IDevice[] getDevices ()

Restituisce i dispositivi.

Ritorni
IDevice[]

getRestartAttemptCount

public int getRestartAttemptCount ()

Ritorni
int

hasInitialDeviceList

public boolean hasInitialDeviceList ()

Ritorni
boolean

isMonitoring

public boolean isMonitoring ()

Restituisce un valore che indica se il monitor è attualmente connesso al server del bridge di debug.

Ritorni
boolean

partenza

public void start ()

Avvia il monitoraggio.

fermata

public void stop ()

Interrompe il monitoraggio.

trackClientToDropAndReopen

public void trackClientToDropAndReopen (ClientImpl client)

Callback per indicare che un client è stato abbandonato, ma deve essere effettuato un tentativo di riaprire la connessione con il client.

Parametri
client ClientImpl: che è stato abbandonato.

trackDeviceToDropAndReopen

public void trackDeviceToDropAndReopen (DeviceImpl device)

Callback per indicare che un dispositivo è stato lasciato cadere. Si deve tentare di riaprire la connessione con il dispositivo e ristabilire la connessione con uno qualsiasi dei client in esecuzione su quel dispositivo.

Parametri
device DeviceImpl: che è stato abbandonato.

trackDisconnectedClient

public void trackDisconnectedClient (ClientImpl client)

Callback chiamato quando un client viene disconnesso. Questo callback ha lo scopo di notificare a tutti i thread che mantengono una registrazione a un socket client di rilasciarla.

Parametri
client ClientImpl: che è stato abbandonato