Client

public interface Client

com.android.tradefed.device.server.Client


Cela représente un seul client, généralement un processus de VM Dalvik.

Cette classe donne accès aux informations de base sur le client, ainsi qu'aux méthodes permettant d'effectuer des actions sur le client.

Pour obtenir des informations plus détaillées, généralement mises à jour en temps réel, vous pouvez accéder à la classe ClientData. Chaque objet Client possède son propre ClientData, accessible via getClientData().

Résumé

Constantes

int CHANGE_DEBUGGER_STATUS

Masque de bits de modification du client : modification de l'état du débogueur

int CHANGE_HEAP_ALLOCATIONS

Masque de bits de modification du client : informations sur l'allocation mises à jour

int CHANGE_HEAP_ALLOCATION_STATUS

Masque de bits de modification du client : informations sur l'allocation mises à jour

int CHANGE_HEAP_DATA

Masque de bits de modification du client : données d'en-tête mises à jour

int CHANGE_HEAP_MODE

Masque de bits de modification du client : modification de l'indicateur de mise à jour du tas

int CHANGE_HPROF

Masque de bits de modification du client : données hprof mises à jour

int CHANGE_INFO

Masque de bits de modification du client : combinaison de Client.CHANGE_NAME, CHANGE_DEBUGGER_STATUS et Client.CHANGE_PORT.

int CHANGE_METHOD_PROFILING_STATUS

Masque de bits de modification du client : informations sur l'allocation mises à jour

int CHANGE_NAME

Masque de bits de modification du client : changement de nom de l'application

int CHANGE_NATIVE_HEAP_DATA

Masque de bits de modification du client : données du tas natif mises à jour

int CHANGE_PORT

Masque de bits de modification du client : modification du port du débogueur

int CHANGE_THREAD_DATA

Masque de bits de modification du client : données du thread mises à jour

int CHANGE_THREAD_MODE

Masque de bits de modification du client : modification de l'indicateur de mise à jour du thread

int CHANGE_THREAD_STACKTRACE

Masque de bits de modification du client : trace de pile du thread mise à jour

int SERVER_PROTOCOL_VERSION

Méthodes publiques

abstract void captureView(String viewRoot, String view, DebugViewDumpHandler handler)
abstract void dumpDisplayList(String viewRoot, String view)
abstract void dumpViewHierarchy(String viewRoot, boolean skipChildren, boolean includeProperties, boolean useV2, DebugViewDumpHandler handler)
abstract void enableAllocationTracker(boolean enabled)

Active ou désactive le suivi de l'allocation pour ce client.

abstract void executeGarbageCollector()

Force le client à exécuter son récupérateur de mémoire.

abstract ClientData getClientData()

Renvoie l'objet ClientData contenant ces informations sur le client.

abstract int getDebuggerListenPort()

Renvoie le port du débogueur pour ce client.

abstract IDevice getDevice()

Renvoie le IDevice sur lequel ce client est exécuté.

abstract boolean isDdmAware()

Renvoie true si la VM cliente est compatible avec DDM.

abstract boolean isDebuggerAttached()

Renvoie true si un débogueur est actuellement associé au client.

abstract boolean isValid()

Indique si cette ClientImpl dispose d'une connexion valide à la VM de l'application.

abstract void kill()

Envoie un message d'arrêt à la VM.

abstract void listViewRoots(DebugViewDumpHandler replyHandler)
abstract void notifyVmMirrorExited()

Les clones de VM du débogueur peuvent se fermer à l'insu de DDMLib, ce qui entraîne diverses conditions de perte de course ou permanente de Client.

abstract void requestAllocationDetails()

Envoie une requête à la VM pour qu'elle envoie les informations sur toutes les allocations qui ont eu lieu depuis l'appel à enableAllocationTracker(boolean) avec enable défini sur null.

abstract void startMethodTracer()
abstract void startSamplingProfiler(int samplingInterval, TimeUnit timeUnit)
abstract void stopMethodTracer()
abstract void stopSamplingProfiler()

Constantes

CHANGE_DEBUGGER_STATUS

public static final int CHANGE_DEBUGGER_STATUS

Masque de bits de modification du client : modification de l'état du débogueur

Valeur constante : 2 (0x00000002)

CHANGE_HEAP_ALLOCATIONS

public static final int CHANGE_HEAP_ALLOCATIONS

Masque de bits de modification du client : informations sur l'allocation mises à jour

Valeur constante : 512 (0x00000200)

CHANGE_HEAP_ALLOCATION_STATUS

public static final int CHANGE_HEAP_ALLOCATION_STATUS

Masque de bits de modification du client : informations sur l'allocation mises à jour

Valeur constante : 1024 (0x00000400)

CHANGE_HEAP_DATA

public static final int CHANGE_HEAP_DATA

Masque de bits de modification du client : données d'en-tête mises à jour

Valeur constante : 64 (0x00000040)

CHANGE_HEAP_MODE

public static final int CHANGE_HEAP_MODE

Masque de bits de modification du client : modification de l'indicateur de mise à jour du tas

Valeur constante : 32 (0x00000020)

CHANGE_HPROF

public static final int CHANGE_HPROF

Masque de bits de modification du client : données hprof mises à jour

Valeur constante : 4096 (0x00001000)

CHANGE_INFO

public static final int CHANGE_INFO

Masque de bits de modification du client : combinaison de Client.CHANGE_NAME, CHANGE_DEBUGGER_STATUS et Client.CHANGE_PORT.

Valeur constante : 7 (0x00000007)

CHANGE_METHOD_PROFILING_STATUS

public static final int CHANGE_METHOD_PROFILING_STATUS

Masque de bits de modification du client : informations sur l'allocation mises à jour

Valeur constante : 2048 (0x00000800)

CHANGE_NAME

public static final int CHANGE_NAME

Masque de bits de modification du client : changement de nom de l'application

Valeur constante : 1 (0x00000001)

CHANGE_NATIVE_HEAP_DATA

public static final int CHANGE_NATIVE_HEAP_DATA

Masque de bits de modification du client : données du tas natif mises à jour

Valeur constante : 128 (0x00000080)

CHANGE_PORT

public static final int CHANGE_PORT

Masque de bits de modification du client : modification du port du débogueur

Valeur constante : 4 (0x00000004)

CHANGE_THREAD_DATA

public static final int CHANGE_THREAD_DATA

Masque de bits de modification du client : données du thread mises à jour

Valeur constante : 16 (0x00000010)

CHANGE_THREAD_MODE

public static final int CHANGE_THREAD_MODE

Masque de bits de modification du client : modification de l'indicateur de mise à jour du thread

Valeur constante : 8 (0x00000008)

CHANGE_THREAD_STACKTRACE

public static final int CHANGE_THREAD_STACKTRACE

Masque de bits de modification du client : trace de pile du thread mise à jour

Valeur constante : 256 (0x00000100)

SERVER_PROTOCOL_VERSION

public static final int SERVER_PROTOCOL_VERSION

Valeur constante : 1 (0x00000001)

Méthodes publiques

captureView

public abstract void captureView (String viewRoot, 
                String view, 
                DebugViewDumpHandler handler)

Paramètres
viewRoot String

view String

handler DebugViewDumpHandler

dumpDisplayList

public abstract void dumpDisplayList (String viewRoot, 
                String view)

Paramètres
viewRoot String

view String

dumpViewHierarchy

public abstract void dumpViewHierarchy (String viewRoot, 
                boolean skipChildren, 
                boolean includeProperties, 
                boolean useV2, 
                DebugViewDumpHandler handler)

Paramètres
viewRoot String

skipChildren boolean

includeProperties boolean

useV2 boolean

handler DebugViewDumpHandler

enableAllocationTracker

public abstract void enableAllocationTracker (boolean enabled)

Active ou désactive le suivi des allocations pour ce client.

Si cette option est activée, la VM commence à suivre les informations d'allocation. Un appel à requestAllocationDetails() permet à la VM d'envoyer des informations sur toutes les allocations qui ont eu lieu entre l'activation et la demande.

Paramètres
enabled boolean

executeGarbageCollector

public abstract void executeGarbageCollector ()

Force le client à exécuter son récupérateur de mémoire.

getClientData

public abstract ClientData getClientData ()

Renvoie l'objet ClientData contenant ces informations sur le client.

Renvoie
ClientData

getDebuggerListenPort

public abstract int getDebuggerListenPort ()

Renvoie le port du débogueur pour ce client.

Renvoie
int

getDevice

public abstract IDevice getDevice ()

Renvoie le IDevice sur lequel ce client est exécuté.

Renvoie
IDevice

isDdmAware

public abstract boolean isDdmAware ()

Renvoie true si la VM cliente est compatible avec DDM.

L'appel n'est autorisé qu'une fois la connexion établie.

Renvoie
boolean

isDebuggerAttached

public abstract boolean isDebuggerAttached ()

Renvoie true si un débogueur est actuellement associé au client.

Renvoie
boolean

isValid

public abstract boolean isValid ()

Indique si cette ClientImpl dispose d'une connexion valide à la VM de l'application.

Renvoie
boolean

arrête

public abstract void kill ()

Envoie un message de fin à la VM. Cette méthode ne fonctionne pas nécessairement si la VM est dans un état d'échec.

listViewRoots

public abstract void listViewRoots (DebugViewDumpHandler replyHandler)

Paramètres
replyHandler DebugViewDumpHandler

notifyVmMirrorExited

public abstract void notifyVmMirrorExited ()

Les clones de VM du débogueur peuvent se fermer à l'insu de DDMLib, ce qui entraîne diverses conditions de perte de course ou permanente de Client. Nous devons informer DDMLib que le débogueur actuellement associé est en train de se fermer et de mettre fin à sa connexion miroir de VM.

requestAllocationDetails

public abstract void requestAllocationDetails ()

Envoie une requête à la VM pour qu'elle envoie les informations sur toutes les allocations qui ont eu lieu depuis l'appel à enableAllocationTracker(boolean) avec enable défini sur null. Il s'agit d'une opération asynchrone.

Vous pouvez accéder aux informations sur l'allocation via ClientData.getAllocations(). La notification indiquant que les nouvelles données sont disponibles sera reçue via AndroidDebugBridge.clientChanged(com.android.tradefed.device.server.ClientImpl, int) avec un changeMask contenant le masque CHANGE_HEAP_ALLOCATIONS.

startMethodTracer

public abstract void startMethodTracer ()

startSamplingProfiler

public abstract void startSamplingProfiler (int samplingInterval, 
                TimeUnit timeUnit)

Paramètres
samplingInterval int

timeUnit TimeUnit

stopMethodTracer

public abstract void stopMethodTracer ()

stopSamplingProfiler

public abstract void stopSamplingProfiler ()