Eventos y programas

Optimización total: Conclusión de la semana de Performance Spotlight

Lectura de 3 min

Durante la semana pasada, nos dedicamos a compartir prácticas recomendadas y orientación para que las apps para Android sean más rápidas, pequeñas y estables. Desde las capacidades fundamentales del optimizador de R8 y las optimizaciones guiadas por perfiles hasta las mejoras de rendimiento con Jetpack Compose y una nueva guía para mejorar el rendimiento de tu app, cubrimos las herramientas de bajo esfuerzo y alto impacto que necesitas para compilar una app de alto rendimiento.

Esta publicación sirve como índice y hoja de ruta para volver a consultar estos recursos cada vez que necesites realizar optimizaciones. Estas son las cinco conclusiones clave de nuestro recorrido juntos.

Usa el optimizador de R8 para acelerar tu app

El cambio más impactante y de menor esfuerzo que puedes realizar es habilitar por completo el optimizador de R8. No solo reduce el tamaño de la app, sino que realiza optimizaciones profundas en todo el programa para reescribir el código de forma fundamental y mejorar la eficiencia. Revisa tus reglas de conservación y vuelve a incluir la R8 en tus tareas de ingeniería.

Nuestra documentación actualizada y ampliada recientemente sobre el optimizador de R8 está aquí para ayudarte.

Reddit observó un inicio en frío un 40% más rápido y un 30% menos de errores de ANR después de habilitar el modo completo de R8.

Puedes leer el caso de éxito completo en nuestro blog.

image.png

Los ingenieros de Disney+ invierten en el rendimiento de la app y optimizan la experiencia del usuario. A veces, incluso los cambios que parecen pequeños pueden tener un gran impacto. Mientras inspeccionaba su configuración de R8, el equipo descubrió que se estaba usando la marca -dontoptimize. Después de habilitar las optimizaciones quitando esta marca, el equipo de Disney+ observó mejoras significativas en el rendimiento de su app.

image.png

Por lo tanto, la próxima vez que alguien te pregunte qué puedes hacer para mejorar el rendimiento de la app, solo tienes que vincularlo a esta publicación.

Obtén más información en nuestro blog del día 1: Usa R8 para reducir, optimizar y acelerar tu app

Te guiamos para que obtengas un mejor rendimiento

Los perfiles de Baseline eliminan de manera eficaz la necesidad de la compilación Just-In-Time, lo que mejora la velocidad de inicio, el desplazamiento, la animación y el rendimiento general de la renderización. Los perfiles de inicio hacen que el inicio de la app sea aún más liviano, ya que aportan un orden inteligente a los archivos classes.dex de tu app.

Y para obtener más información sobre la importancia de los perfiles de Baseline en el rendimiento de las apps, lee el blog de ingeniería de Meta, en el que se explica cómo los perfiles de Baseline mejoraron varias métricas de rendimiento fundamentales en hasta un 40% en sus apps.

Seguimos mejorando el rendimiento de Jetpack Compose en Jetpack Compose 1.10. Las funciones como la composición que se puede pausar y la ventana de caché personalizable son cruciales para mantener cero bloqueos de desplazamiento cuando se trabaja con elementos de lista complejos.Consulta el episodio más reciente de #TheAndroidShow, en el que explicamos esto con más detalle.

Obtén más información en nuestro blog de los miércoles: Consideraciones de rendimiento más detalladas

Medir el rendimiento puede ser muy sencillo

No puedes administrar lo que no mides. Nuestra Guía de nivelación del rendimiento desglosa tu recorrido de medición en cinco pasos, que comienzan con los datos disponibles fácilmente y continúan con las herramientas locales avanzadas.

A partir del nivel 1, te enseñaremos a usar los datos disponibles de Android vitals, que te proporciona datos de campo sobre ANR, fallas y uso excesivo de batería.

También te enseñaremos a subir de nivel. Por ejemplo, demostraremos cómo alcanzar el nivel 3 con pruebas de rendimiento locales usando Jetpack Macrobenchmark y la nueva API de UiAutomator 2.4 para medir y verificar con precisión cualquier cambio en el rendimiento de tu app.

Obtén más información en nuestra entrada de blog del jueves: [Link to Thursday's Blog: Leveling Guide for your Performance Journey]

Se actualizó la depuración del rendimiento

La optimización avanzada no debería generar informes de fallas ilegibles. Las nuevas funciones están diseñadas para ayudarte a depurar con confianza R8 y el trabajo en segundo plano:

Retrace automático de Logcat

A partir de Android Studio Narwhal, los seguimientos de pila se pueden desofuscar automáticamente en la ventana de Logcat. De esta manera, puedes ver y depurar de inmediato cualquier falla en una compilación lista para producción.

Reglas de conservación restringidas

El martes, desmitificamos las reglas de conservación necesarias para corregir las fallas de tiempo de ejecución y enfatizamos la escritura de reglas específicas a nivel de miembro en lugar de comodines demasiado amplios. Y, como es un tema importante, también creamos un video para ti.

Y con la nueva verificación de lint para reglas de conservación amplias, la actualización de funciones de Android Studio Otter 3 también te ofrece cobertura en este aspecto.

image.png

También publicamos una nueva guía sobre pruebas y solución de problemas de tu configuración de R8 para ayudarte a obtener la configuración correcta con confianza.

Obtén más información en nuestra entrada de blog del martes: Configura y soluciona problemas de las reglas de conservación de R8

Trabajo en segundo plano

Compartimos orientación para depurar situaciones comunes que puedes encontrar cuando programas tareas con WorkManager.

El Inspector de tareas en segundo plano te brinda una representación visual y una vista de gráfico de las tareas de WorkManager, lo que te ayuda a depurar por qué el trabajo programado se retrasó o falló. Además, nuestra página de destino de la documentación actualizada sobre el trabajo en segundo plano destaca las APIs específicas para tareas que están optimizadas para casos de uso particulares, lo que te ayuda a lograr una ejecución más confiable.
 

Obtén más información en nuestro blog del miércoles: Consideraciones sobre el rendimiento del trabajo en segundo plano

La optimización del rendimiento es un proceso continuo

Si aceptaste nuestro desafío de habilitar el modo completo de R8 esta semana, el siguiente paso es integrar el rendimiento en la hoja de ruta del producto con la puntuación de rendimiento de la app. Este marco de trabajo estandarizado te ayuda a encontrar los elementos de acción con mayor impacto para la mejora continua.

Terminamos la semana con la sesión de preguntas y respuestas de #AskAndroid Live, en la que los ingenieros respondieron tus preguntas más difíciles sobre R8, optimizaciones guiadas por perfiles y mucho más. Si te lo perdiste, busca la repetición.

Gracias por participar. Ahora, comienza a desarrollar y mantén el impulso.

Escrito por:
Continuar leyendo