Cliente

public interface Client

com.android.tradefed.device.server.Client


Representa un solo cliente, por lo general, un proceso de VM de Dalvik.

Esta clase brinda acceso a información básica del cliente, así como a métodos para realizar acciones en el cliente.

Se puede acceder a información más detallada, que suele actualizarse en tiempo real, a través de la clase ClientData. Cada objeto Client tiene su propio ClientData al que se accede a través de getClientData().

Resumen

Constantes

int CHANGE_DEBUGGER_STATUS

Máscara de bits de cambio del cliente: cambio de estado del depurador

int CHANGE_HEAP_ALLOCATIONS

Máscara de bits de cambio del cliente: Se actualizó la información de asignación

int CHANGE_HEAP_ALLOCATION_STATUS

Máscara de bits de cambio del cliente: Se actualizó la información de asignación

int CHANGE_HEAP_DATA

Máscara de bits de cambio del cliente: Se actualizaron los datos del encabezado

int CHANGE_HEAP_MODE

Máscara de bits de cambio del cliente: cambio de la marca de actualización del montón

int CHANGE_HPROF

Máscara de bits de cambio del cliente: Se actualizaron los datos de hprof

int CHANGE_INFO

Máscara de bits de cambio del cliente: Combinación de Client.CHANGE_NAME, CHANGE_DEBUGGER_STATUS y Client.CHANGE_PORT.

int CHANGE_METHOD_PROFILING_STATUS

Máscara de bits de cambio del cliente: Se actualizó la información de asignación

int CHANGE_NAME

Máscara de bits de cambio del cliente: cambio de nombre de la aplicación

int CHANGE_NATIVE_HEAP_DATA

Máscara de bits de cambio del cliente: Se actualizaron los datos del heap nativo

int CHANGE_PORT

Máscara de bits de cambio del cliente: cambio de puerto del depurador

int CHANGE_THREAD_DATA

Máscara de bits de cambio del cliente: Se actualizaron los datos del subproceso

int CHANGE_THREAD_MODE

Máscara de bits de cambio del cliente: cambio de la marca de actualización del subproceso

int CHANGE_THREAD_STACKTRACE

Máscara de bits de cambio del cliente: Se actualizó el seguimiento de pila del subproceso

int SERVER_PROTOCOL_VERSION

Métodos públicos

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)

Habilita o inhabilita el Allocation tracker para este cliente.

abstract void executeGarbageCollector()

Fuerza al cliente a ejecutar su recolector de elementos no utilizados.

abstract ClientData getClientData()

Devuelve el objeto ClientData que contiene la información de este cliente.

abstract int getDebuggerListenPort()

Devuelve el puerto del depurador para este cliente.

abstract IDevice getDevice()

Devuelve el IDevice en el que se ejecuta este cliente.

abstract boolean isDdmAware()

Devuelve true si la VM del cliente es compatible con DDM.

abstract boolean isDebuggerAttached()

Devuelve true si hay un depurador conectado al cliente.

abstract boolean isValid()

Devuelve un valor que indica si este ClientImpl tiene una conexión válida con la VM de la aplicación.

abstract void kill()

Envía un mensaje de cierre a la VM.

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

Los duplicados de la VM del depurador pueden salir por detrás de DDMLib, lo que genera varias condiciones de pérdida de Client permanentes o de carrera.

abstract void requestAllocationDetails()

Envía una solicitud a la VM para que envíe la información sobre todas las asignaciones que se produjeron desde la llamada a enableAllocationTracker(boolean) con enable establecido en 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

Máscara de bits de cambio del cliente: cambio de estado del depurador

Valor constante: 2 (0x00000002)

CHANGE_HEAP_ALLOCATIONS

public static final int CHANGE_HEAP_ALLOCATIONS

Máscara de bits de cambio del cliente: Se actualizó la información de asignación

Valor constante: 512 (0x00000200)

CHANGE_HEAP_ALLOCATION_STATUS

public static final int CHANGE_HEAP_ALLOCATION_STATUS

Máscara de bits de cambio del cliente: Se actualizó la información de asignación

Valor constante: 1024 (0x00000400)

CHANGE_HEAP_DATA

public static final int CHANGE_HEAP_DATA

Máscara de bits de cambio del cliente: Se actualizaron los datos del encabezado

Valor constante: 64 (0x00000040)

CHANGE_HEAP_MODE

public static final int CHANGE_HEAP_MODE

Máscara de bits de cambio del cliente: Cambio de la marca de actualización del montón

Valor constante: 32 (0x00000020)

CHANGE_HPROF

public static final int CHANGE_HPROF

Máscara de bits de cambio del cliente: Se actualizaron los datos de hprof

Valor constante: 4096 (0x00001000)

CHANGE_INFO

public static final int CHANGE_INFO

Máscara de bits de cambio del cliente: Combinación de Client.CHANGE_NAME, CHANGE_DEBUGGER_STATUS y Client.CHANGE_PORT.

Valor constante: 7 (0x00000007)

CHANGE_METHOD_PROFILING_STATUS

public static final int CHANGE_METHOD_PROFILING_STATUS

Máscara de bits de cambio del cliente: Se actualizó la información de asignación

Valor constante: 2048 (0x00000800)

CHANGE_NAME

public static final int CHANGE_NAME

Máscara de bits de cambio del cliente: Cambio de nombre de la aplicación

Valor constante: 1 (0x00000001)

CHANGE_NATIVE_HEAP_DATA

public static final int CHANGE_NATIVE_HEAP_DATA

Máscara de bits de cambio del cliente: Se actualizaron los datos del heap nativo

Valor constante: 128 (0x00000080)

CHANGE_PORT

public static final int CHANGE_PORT

Máscara de bits de cambio del cliente: cambio de puerto del depurador

Valor constante: 4 (0x00000004)

CHANGE_THREAD_DATA

public static final int CHANGE_THREAD_DATA

Máscara de bits de cambio del cliente: Se actualizaron los datos del subproceso

Valor constante: 16 (0x00000010)

CHANGE_THREAD_MODE

public static final int CHANGE_THREAD_MODE

Máscara de bits de cambio del cliente: cambio de la marca de actualización del subproceso

Valor constante: 8 (0x00000008)

CHANGE_THREAD_STACKTRACE

public static final int CHANGE_THREAD_STACKTRACE

Máscara de bits de cambio del cliente: Se actualizó el seguimiento de pila del subproceso

Valor constante: 256 (0x00000100)

SERVER_PROTOCOL_VERSION

public static final int SERVER_PROTOCOL_VERSION

Valor constante: 1 (0x00000001)

Métodos públicos

captureView

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

Parámetros
viewRoot String

view String

handler DebugViewDumpHandler

dumpDisplayList

public abstract void dumpDisplayList (String viewRoot, 
                String view)

Parámetros
viewRoot String

view String

dumpViewHierarchy

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

Parámetros
viewRoot String

skipChildren boolean

includeProperties boolean

useV2 boolean

handler DebugViewDumpHandler

enableAllocationTracker

public abstract void enableAllocationTracker (boolean enabled)

Habilita o inhabilita el Allocation tracker para este cliente.

Si está habilitada, la VM comenzará a hacer un seguimiento de la información de asignación. Una llamada a requestAllocationDetails() hará que la VM envíe la información sobre todas las asignaciones que ocurrieron entre la habilitación y la solicitud.

Parámetros
enabled boolean

executeGarbageCollector

public abstract void executeGarbageCollector ()

Fuerza al cliente a ejecutar su recolector de elementos no utilizados.

getClientData

public abstract ClientData getClientData ()

Devuelve el objeto ClientData que contiene la información de este cliente.

Muestra
ClientData

getDebuggerListenPort

public abstract int getDebuggerListenPort ()

Devuelve el puerto del depurador para este cliente.

Muestra
int

getDevice

public abstract IDevice getDevice ()

Devuelve el IDevice en el que se ejecuta este cliente.

Muestra
IDevice

isDdmAware

public abstract boolean isDdmAware ()

Devuelve true si la VM del cliente es compatible con DDM.

Solo se permite llamar aquí después de que se haya establecido la conexión.

Muestra
boolean

isDebuggerAttached

public abstract boolean isDebuggerAttached ()

Devuelve true si hay un depurador conectado al cliente.

Muestra
boolean

isValid

public abstract boolean isValid ()

Devuelve un valor que indica si este ClientImpl tiene una conexión válida con la VM de la aplicación.

Muestra
boolean

matar

public abstract void kill ()

Envía un mensaje de cierre a la VM. Esto no necesariamente funciona si la VM está en un estado de falla.

listViewRoots

public abstract void listViewRoots (DebugViewDumpHandler replyHandler)

Parámetros
replyHandler DebugViewDumpHandler

notifyVmMirrorExited

public abstract void notifyVmMirrorExited ()

Los duplicados de la VM del depurador pueden salir por detrás de DDMLib, lo que genera varias condiciones de pérdida de Client permanentes o de carrera. Debemos notificar a DDMLib que el depurador adjunto actualmente está saliendo y cerrando su conexión de duplicación de VM.

requestAllocationDetails

public abstract void requestAllocationDetails ()

Envía una solicitud a la VM para que envíe la información sobre todas las asignaciones que se produjeron desde la llamada a enableAllocationTracker(boolean) con enable establecido en null. Esta operación es asíncrona.

ClientData.getAllocations() puede acceder a la información de asignación. La notificación de que los datos nuevos están disponibles se recibirá a través de AndroidDebugBridge.clientChanged(com.android.tradefed.device.server.ClientImpl, int) con un changeMask que contiene la máscara CHANGE_HEAP_ALLOCATIONS.

startMethodTracer

public abstract void startMethodTracer ()

startSamplingProfiler

public abstract void startSamplingProfiler (int samplingInterval, 
                TimeUnit timeUnit)

Parámetros
samplingInterval int

timeUnit TimeUnit

stopMethodTracer

public abstract void stopMethodTracer ()

stopSamplingProfiler

public abstract void stopSamplingProfiler ()