Puedes recopilar perfiles con dos métodos principales: la recopilación manual de perfiles y la API de ProfilingManager.
- La recopilación manual de perfiles implica ejecutar Perfetto de forma manual en tu dispositivo local para registrar perfiles. Puedes hacerlo con los comandos que se describen 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 puede 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 puede ser difícil. ProfilingManager también facilita la creación de perfiles de comportamiento inesperado porque 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 devolverlos, 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 inquietudes sobre la 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 porque 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.