Para brindar la mejor experiencia del usuario, debes optimizar tu app para que sea lo más pequeña y rápida posible. Nuestro optimizador de apps, llamado R8, optimiza tu app quitando el código y los recursos que no se usan, reescribiendo el código para optimizar el rendimiento del tiempo de ejecución y mucho más. Para tus usuarios, esto significa lo siguiente:
- Iniciar la app más rápido
- Mejoras en el rendimiento del tiempo de ejecución y la renderización
- Menos errores de ANR
Para habilitar la optimización de la app, establece isMinifyEnabled = true
(para la optimización del código) y isShrinkResources = true
(para la optimización de recursos) en la secuencia de comandos de compilación de la versión de lanzamiento a nivel de la app, como se muestra en el siguiente código. Te recomendamos que siempre habilites ambos parámetros de configuración. También recomendamos habilitar la optimización de la app solo en la versión final que pruebes antes de publicarla (por lo general, la compilación de lanzamiento), ya que las optimizaciones aumentan el tiempo de compilación del proyecto y pueden dificultar la depuración debido a la forma en que modifican el código.
Kotlin
android { buildTypes { release { // Enables code-related app optimization. isMinifyEnabled = true // Enables resource shrinking. isShrinkResources = true proguardFiles( // Default file with automatically generated optimization rules. getDefaultProguardFile("proguard-android-optimize.txt"), ... ) ... } } ... }
Groovy
android { buildTypes { release { // Enables code-related app optimization. minifyEnabled true // Enables resource shrinking. shrinkResources true // Default file with automatically generated optimization rules. proguardFiles getDefaultProguardFile('proguard-android-optimize.txt') ... } } }
Optimiza la reducción de recursos para que las apps sean aún más pequeñas
La versión 8.12.0 del complemento de Gradle para Android (AGP) introduce la reducción de recursos optimizada, cuyo objetivo es integrar la optimización de recursos y código para crear apps aún más pequeñas y rápidas.
Habilita la reducción de recursos optimizada
Para activar la nueva canalización optimizada de reducción de recursos para una versión del AGP anterior a la 9.0.0, agrega lo siguiente al archivo gradle.properties
de tu proyecto:
android.r8.optimizedResourceShrinking=true
Si usas AGP 9.0.0 o una versión posterior, no necesitas configurar android.r8.optimizedResourceShrinking=true
. La reducción de recursos optimizada se aplica automáticamente cuando isShrinkResources = true
está habilitado en la configuración de compilación.
Verifica y configura los parámetros de configuración de optimización de R8
Para permitir que R8 use todas sus capacidades de optimización, quita la siguiente línea del archivo gradle.properties
de tu proyecto, si existe:
android.enableR8.fullMode=false # Remove this line from your codebase.
Ten en cuenta que habilitar la optimización de la app dificulta la comprensión de los seguimientos de pila, en especial si R8 cambia los nombres de las clases o los métodos. Para obtener seguimientos de pila que correspondan correctamente a tu código fuente, consulta Cómo recuperar el seguimiento de pila original.
Si R8 está habilitado, también debes crear perfiles de inicio para obtener un rendimiento de inicio aún mejor.
Si habilitas la optimización de la app y esta genera errores, estas son algunas estrategias para corregirlos:
- Agrega reglas de conservación para mantener intacto parte del código.
- Adopta las optimizaciones de forma incremental.
- Actualiza tu código para usar bibliotecas más adecuadas para la optimización.