Puedes recopilar perfiles con dos métodos principales: la recopilación manual de perfiles
y la API ProfilingManager.
- La recopilación manual de perfiles implica ejecutar Perfetto de forma manual en tu dispositivo local para registrar perfiles. Puedes hacerlo con comandos, como se describe en Cómo registrar seguimientos del sistema con Perfetto, o con la tarjeta de Configuración rápida , como se explica en Cómo capturar mediante la tarjeta de Configuración rápida.
ProfilingManagerpermite que las apps recopilen perfiles en producción.
Te recomendamos que uses ProfilingManager para recopilar y analizar datos de
muchos usuarios o para depurar problemas poco frecuentes. Sin embargo, para los problemas que son más fáciles de
reproducir, la creación de perfiles manual podría ser una mejor opción.
En la siguiente tabla, se muestra cómo difieren estos dos métodos para registrar perfiles:
| ProfilingManager | Recopilación manual de perfiles | |
|---|---|---|
| Control de tiempo del perfil | Más | Menos |
| Fuente del perfil | Dispositivo local y usuarios públicos | Solo dispositivo local |
| Salida del perfil | Oculto | Sin ocultar |
| Creación de perfiles basada en eventos | Sí | No |
| Personalización del perfil | Menos | Más |
| Escalabilidad | Alta | Baja |
En las siguientes secciones, se describen brevemente las diferencias entre los métodos de registro de perfiles.
Control de tiempo del perfil
La API de ProfilingManager proporciona más control sobre cuándo una app inicia o
detiene un perfil en comparación con la creación de perfiles manual, en la que la inicialización del perfil de tiempo podría ser difícil. ProfilingManager también facilita la creación de perfiles de comportamiento inesperado, ya que puedes recopilar un perfil incluso si no puedes reproducir el comportamiento de forma local.
Fuente del perfil
Con ProfilingManager, puedes recopilar datos de usuarios públicos para encontrar y solucionar
problemas de rendimiento. Por el contrario, la creación de perfiles manual solo te permite reproducir problemas
en tu propio dispositivo.
Salida del perfil
ProfilingManager y la recopilación manual producen diferentes tipos de salidas de perfil:
ProfilingManagerproduce seguimientos ocultos. Los seguimientos ocultos muestran información sobre el proceso de tu app, pero ocultan datos de otras apps del sistema. Debido a queProfilingManagerrecopila y oculta antes de devolver los, puedes recopilar seguimientos de usuarios públicos y proteger su privacidad sin mostrar datos de otras apps.La recopilación manual de perfiles produce seguimientos sin ocultar. Cuando registras manualmente un seguimiento del sistema, el resultado puede incluir todos los procesos que se ejecutan en el sistema. Si bien estos seguimientos sin ocultar ofrecen datos más completos para la depuración, solo puedes acceder a ellos de forma local debido a problemas de privacidad.
Creación de perfiles basada en eventos
ProfilingManager también puede recopilar perfiles cuando ocurren eventos específicos, como
un error de Aplicación no responde (ANR) o el inicio de la app. ProfilingManager
controlará el inicio y la detención de los perfiles para la recopilación basada en eventos.
Personalización del perfil
La creación de perfiles manual proporciona la mayor personalización, mientras que ProfilingManager
ofrece menos opciones de personalización.
Escalabilidad
ProfilingManager es la mejor manera de escalar el seguimiento, ya que es la única opción
que permite a los desarrolladores de apps registrar perfiles de usuarios públicos. Con
ProfilingManager, puedes configurar la recopilación y el análisis de seguimientos a gran escala.
La creación de perfiles manual se limita al uso local.