BeautyPlus, lanzada en 2013, es una de las apps de edición de fotos más populares del mundo, usada por maquilladores, fotógrafos y usuarios comunes de dispositivos móviles. Alrededor de 50 millones de personas usan la app cada mes para editar sus selfies, fotos y videos, y agregarles filtros. La app, desarrollada por Xiamen Meitu Technology Co., Ltd., de China, es muy popular para las selfies y se puede usar para hacer de todo, desde corregir el tono de la piel y blanquear sonrisas hasta estilizar rasgos y borrar imperfecciones, con apenas deslizar el dedo y hacer algunos clics.
Debido a que la app se actualiza frecuentemente, es necesario contar con una gran cantidad de desarrolladores. Sin embargo, con el tiempo, la arquitectura subyacente de la app comenzó a carecer de uniformidad y claridad. El dinámico equipo necesitaba una forma de mantener informados a sus desarrolladores y, al mismo tiempo, simplificar la administración del ciclo de vida y solucionar los problemas relacionados con la actualización de la IU asíncrona.
![](https://developer.android.google.cn/static/images/distribute/stories/beautyplus-screenshot.png?authuser=7&hl=es)
Imagen 1: Una sesión de edición de foto de ejemplo en BeautyPlus
Qué hizo la empresa
Los componentes de la arquitectura de Android proporcionaron las herramientas que los desarrolladores necesitaban para que la app fuera concisa, estable y fácil de interpretar para los nuevos ingenieros.
Entre los componentes que los desarrolladores de BeautyPlus comenzaron a usar, está ViewModel
, que facilita el procesamiento lógico con actualizaciones de actividad y fragmentos. ViewModel
está diseñado para almacenar y administrar datos relacionados con la IU de una manera optimizada para los ciclos de vida que respete el ciclo de vida de otros componentes de la app.
También aprovecharon el componente LiveData
, una clase de retención de datos observable, que también está optimizada para el ciclo de vida a fin de ayudar a garantizar que la IU coincida con el estado de los datos. Estos componentes de la arquitectura de Android resultaron fáciles de usar para el equipo, además de que no encontraron problemas y los beneficios fueron evidentes rápidamente.
Resultados
Gracias a los componentes de la arquitectura de Android, la app BeautyPlus tuvo un código un 5% más limpio y un 15% más legible inmediatamente. La arquitectura también quedó más unificada y ayudó a los desarrolladores a ahorrar tiempo y esfuerzo, lo que facilitó que los nuevos miembros del equipo pudieran ponerse a la par rápidamente. Además, hubo menos fugas de memoria, se simplificó la actualización de datos y los desarrolladores ya no tuvieron que preocuparse por actualizar la IU asíncrona.
"Cuando usamos ViewModel y LiveData para BeautyPlus, el código se volvió más conciso y legible, y su arquitectura se unificó", dice Zheng Songyin, gerente sénior de Desarrollo. "La operación del ciclo de vida de la app se administró de forma segura y también mejoró la estabilidad".
Comenzar
Los componentes de la arquitectura de Android están disponibles para todos los desarrolladores. Comienza a usar los componentes de la arquitectura de Android.