DeviceMonitor

public final class DeviceMonitor
extends Object implements ClientTracker

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


DeviceMonitor surveille les appareils associés à adb.

Sur un thread, il exécute DeviceListMonitorTask. Cela établit une connexion de socket à l'hôte adb et émet un ERROR(/DeviceListMonitorTask.ADB_TRACK_DEVICES_COMMAND). Il surveille ensuite ce socket pour détecter toute modification concernant la connexion et l'état de l'appareil. Si ::getClientSupport n'est pas activé, la tâche DeviceClientMonitorTask n'est pas exécutée et les appareils ne sont pas enregistrés.

Sur un autre thread, il exécute DeviceClientMonitorTask. Cela établit une connexion socket à l'hôte adb pour chaque appareil enregistré et émet un ERROR(/DeviceClientMonitorTask.ADB_TRACK_JDWP_COMMAND). Sur cette connexion, il surveille les clients actifs sur l'appareil. Remarque : Un seul thread surveille les connexions JDWP de tous les appareils. Les différentes connexions de socket à adb (une par appareil) sont multiplexées sur un seul sélecteur.

Résumé

Classes imbriquées

class DeviceMonitor.DeviceListComparisonResult

 

Constructeurs publics

DeviceMonitor(AndroidDebugBridge server)

Crée un objet DeviceMonitor et l'associe à l'objet AndroidDebugBridge en cours d'exécution.

Méthodes publiques

int getConnectionAttemptCount()
IDevice[] getDevices()

Retourne les appareils.

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

Indique si le moniteur est actuellement connecté au serveur du pont de débogage.

void start()

Démarre la surveillance.

void stop()

Arrête la surveillance.

void trackClientToDropAndReopen(ClientImpl client)

Callback indiquant qu'un client a été abandonné, mais qu'une tentative doit être faite pour rouvrir la connexion avec le client.

void trackDeviceToDropAndReopen(DeviceImpl device)

Rappel pour indiquer qu'un appareil a été déposé.

void trackDisconnectedClient(ClientImpl client)

Rappel lorsqu'un client est déconnecté.

Constructeurs publics

DeviceMonitor

public DeviceMonitor (AndroidDebugBridge server)

Crée un objet DeviceMonitor et l'associe à l'objet AndroidDebugBridge en cours d'exécution.

Paramètres
server AndroidDebugBridge : AndroidDebugBridge en cours.

Méthodes publiques

getConnectionAttemptCount

public int getConnectionAttemptCount ()

Renvoie
int

getDevices

public IDevice[] getDevices ()

Retourne les appareils.

Renvoie
IDevice[]

getRestartAttemptCount

public int getRestartAttemptCount ()

Renvoie
int

hasInitialDeviceList

public boolean hasInitialDeviceList ()

Renvoie
boolean

isMonitoring

public boolean isMonitoring ()

Indique si le moniteur est actuellement connecté au serveur du pont de débogage.

Renvoie
boolean

départ

public void start ()

Démarre la surveillance.

arrêter

public void stop ()

Arrête la surveillance.

trackClientToDropAndReopen

public void trackClientToDropAndReopen (ClientImpl client)

Callback indiquant qu'un client a été abandonné, mais qu'une tentative doit être faite pour rouvrir la connexion avec le client.

Paramètres
client ClientImpl : qui a été déposé.

trackDeviceToDropAndReopen

public void trackDeviceToDropAndReopen (DeviceImpl device)

Rappel pour indiquer qu'un appareil a été déposé. Une tentative doit être faite pour rouvrir la connexion avec l'appareil et rétablir la connexion avec l'un des clients exécutés sur cet appareil.

Paramètres
device DeviceImpl : qui a été déposé.

trackDisconnectedClient

public void trackDisconnectedClient (ClientImpl client)

Rappel lorsqu'un client est déconnecté. Ce rappel est destiné à notifier à tous les threads qui détiennent un enregistrement sur un socket client de le libérer.

Paramètres
client ClientImpl : le prix a baissé