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 con la tarjeta de Configuración rápida.
ProfilingManager
permite 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 generació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 en el dispositivo local |
Resultado del perfil | Oculto | Sin ocultar |
Creación de perfiles basada en eventos | Sí | No |
Personalización del perfil | Menos | Más |
Escalabilidad | Alta | Bajo |
En las siguientes secciones, se describen brevemente las diferencias entre los métodos de grabación 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 generación de perfiles manual, en la que la inicialización del perfil de sincronización puede 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 corregir problemas de rendimiento. En cambio, la generación de perfiles manual solo te permite reproducir problemas en tu propio dispositivo.
Resultado del perfil
ProfilingManager
y la recopilación manual producen diferentes tipos de resultados de perfil:
ProfilingManager
produce registros censurados. Los registros censurados muestran información sobre el proceso de tu app, pero ocultan datos de otras apps en el sistema. ComoProfilingManager
recopila y oculta los datos antes de devolverlos, puedes recopilar registros de usuarios públicos y, al mismo tiempo, proteger su privacidad, ya que no se muestran datos de otras apps.La recopilación manual de perfiles produce registros sin editar. Cuando grabas manualmente un registro del sistema, es posible que el resultado incluya todos los procesos que se ejecutan en el sistema. Si bien estos registros sin editar 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 registros para la recopilación basada en eventos.
Personalización del perfil
La generació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 registro 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 registros a gran escala.
El registro manual de perfiles se limita al uso local.