- sintaxis:
<profileable android:shell=["true" | "false"] android:enabled=["true" | "false"] />
- se incluye en:
<application>
- descripción:
- Especifica cómo los generadores de perfiles pueden acceder a esta aplicación.
- atributos:
android:shell
-
Indica si el usuario del dispositivo puede generar perfiles de esta aplicación mediante herramientas de depuración locales, como las siguientes:
- APIs de seguimiento de
android.os.Trace
(Android 11 y versiones anteriores) simpleperf
- Comandos
am profile
- Generadores de perfiles
perfetto
(memoria nativa, memoria Java, CPU)
false
, estas herramientas y APIs solo funcionarán cuando una app seadebuggable
. Las apps depurables incurren en una degradación del rendimiento significativa y variada, y no son útiles para medir el tiempo con precisión. Recomendamos este elemento para las mediciones de rendimiento locales a fin de obtener resultados precisos.Este elemento está diseñado para usarse en compilaciones de lanzamiento y producción a fin de habilitar la generación de perfiles local. Esto genera un riesgo mínimo acerca de la exposición de datos: las herramientas de creación de perfiles del host y el proceso del shell no pueden leer los datos de la memoria. Solo se pueden leer los seguimientos de pila, que suelen estar ofuscados o carecen de símbolos en las compilaciones de lanzamiento.
- APIs de seguimiento de
android:enabled
-
Especifica si los servicios del sistema o las herramientas de shell pueden perfilar la aplicación.
Para la última, también debes configurar
android:shell
. Si es falso, no se puede perfilar la aplicación. El valor predeterminado es true. Este atributo se agregó en el nivel de API 30.
- primera inclusión:
- Nivel de API 29
El contenido y las muestras de código que aparecen en esta página están sujetas a las licencias que se describen en la Licencia de Contenido. Java y OpenJDK son marcas registradas de Oracle o sus afiliados.
Última actualización: 2024-08-22 (UTC)
[]
[]
{
"lastModified": "Última actualización: 2024-08-22 (UTC)",
"confidential": False
}