DeviceMonitor

public final class DeviceMonitor
extends Object implements ClientTracker

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


DeviceMonitor monitoruje urządzenia podłączone do adb.

W jednym wątku uruchamia DeviceListMonitorTask. Ustanawia to połączenie gniazda z hostem adb i wydaje polecenie ERROR(/DeviceListMonitorTask.ADB_TRACK_DEVICES_COMMAND). Następnie monitoruje to gniazdo pod kątem wszystkich zmian dotyczących połączenia i stanu urządzenia. Jeśli opcja ::getClientSupport nie jest włączona, zadanie DeviceClientMonitorTask nie jest uruchamiane, a urządzenia nie są rejestrowane.

Na innym wątku uruchamia DeviceClientMonitorTask. Ustanawia to połączenie gniazda z hostem adb na każde zarejestrowane urządzenie i wysyła polecenie ERROR(/DeviceClientMonitorTask.ADB_TRACK_JDWP_COMMAND). W ramach tego połączenia monitoruje aktywne klienty na urządzeniu. Uwaga: jeden wątek monitoruje połączenia JDWP ze wszystkich urządzeń. Różne połączenia gniazd z adb (po jednym na urządzenie) są multipleksowane za pomocą jednego selektora.

Podsumowanie

Zagnieżdżone klasy

class DeviceMonitor.DeviceListComparisonResult

 

Publiczne konstruktory

DeviceMonitor(AndroidDebugBridge server)

Tworzy nowy obiekt DeviceMonitor i łączy go z aktywnym obiektem AndroidDebugBridge.

Metody publiczne

int getConnectionAttemptCount()
IDevice[] getDevices()

Zwraca urządzenia.

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

Zwraca informację, czy monitor jest obecnie połączony z serwerem mostu debugowania.

void start()

Rozpoczyna monitorowanie.

void stop()

Zatrzymuje monitorowanie.

void trackClientToDropAndReopen(ClientImpl client)

Wywołanie zwrotne wskazujące, że klient został odłączony, ale należy podjąć próbę ponownego otwarcia połączenia z nim.

void trackDeviceToDropAndReopen(DeviceImpl device)

Wywołanie zwrotne wskazujące, że urządzenie zostało upuszczone.

void trackDisconnectedClient(ClientImpl client)

Wywołanie zwrotne, gdy klient zostanie odłączony.

Publiczne konstruktory

DeviceMonitor

public DeviceMonitor (AndroidDebugBridge server)

Tworzy nowy obiekt DeviceMonitor i łączy go z aktywnym obiektem AndroidDebugBridge.

Parametry
server AndroidDebugBridge: bieżący AndroidDebugBridge.

Metody publiczne

getConnectionAttemptCount

public int getConnectionAttemptCount ()

Zwroty
int

getDevices

public IDevice[] getDevices ()

Zwraca urządzenia.

Zwroty
IDevice[]

getRestartAttemptCount

public int getRestartAttemptCount ()

Zwroty
int

hasInitialDeviceList

public boolean hasInitialDeviceList ()

Zwroty
boolean

isMonitoring

public boolean isMonitoring ()

Zwraca informację, czy monitor jest obecnie połączony z serwerem mostu debugowania.

Zwroty
boolean

rozpocznij

public void start ()

Rozpoczyna monitorowanie.

zatrzymaj

public void stop ()

Zatrzymuje monitorowanie.

trackClientToDropAndReopen

public void trackClientToDropAndReopen (ClientImpl client)

Wywołanie zwrotne wskazujące, że klient został odłączony, ale należy podjąć próbę ponownego otwarcia połączenia z nim.

Parametry
client ClientImpl: który został odrzucony.

trackDeviceToDropAndReopen

public void trackDeviceToDropAndReopen (DeviceImpl device)

Wywołanie zwrotne wskazujące, że urządzenie zostało upuszczone. Należy spróbować ponownie otworzyć połączenie z urządzeniem i przywrócić połączenie z dowolnym klientem działającym na tym urządzeniu.

Parametry
device DeviceImpl: który został odrzucony.

trackDisconnectedClient

public void trackDisconnectedClient (ClientImpl client)

Wywołanie zwrotne, gdy klient zostanie odłączony. Ten wywołanie zwrotne ma na celu powiadomienie wszystkich wątków, które przechowują rejestrację gniazda klienta, aby ją zwolnić.

Parametry
client ClientImpl: cena spadła