Adobe reduce el tamaño de sus apps en un 20% gracias a los paquetes de aplicaciones y la función Dynamic Delivery

Las herramientas de creatividad y productividad de Adobe ayudan a los usuarios desde 1982. Si bien las apps de Adobe como Photoshop, Illustrator y Lightroom fueron las favoritas de los creativos profesionales durante décadas, el humilde formato PDF, que Adobe inventó hace aproximadamente 30 años, es el producto más conocido de la familia.

Adobe Acrobat Reader, la app insignia para dispositivos móviles de Android, es el estándar global gratuito para ver, firmar y comentar documentos PDF de manera confiable, con más de 500 millones de descargas. Y después de todos estos años, sigue mejorando. "El año pasado, agregamos una gran cantidad de funciones a la aplicación para Android", expresó Shubham Garg, experto en informática de Adobe. Sin embargo, aunque a los usuarios les encantaron las nuevas funciones, también comenzaron a notar que la app tenía un tamaño mayor, lo que generó menos conversiones. Esto representó un problema, "particularmente en economías en desarrollo, donde vemos que estos dos aspectos tienen mayor importancia", afirmó Shubham.

Qué hizo la empresa

Los paquetes Android App Bundle permitieron que Adobe redujera el tamaño de la app de Acrobat sin demasiado esfuerzo. "La transición a los paquetes de aplicaciones fue sencilla", comentó Shubham. "Nuestra app ya era compatible con los requisitos mínimos de Gradle y de la versión del SDK de Android, por lo que solo tuvimos que implementar pequeños cambios en el código". Asimismo, comentó que una vez que transfirieron de forma segura una copia de su clave de firma a Google, el lanzamiento fue fácil.

Además de utilizar los paquetes, Adobe decidió modularizar varias funciones de la app para reducir aún más su tamaño. "Ya usábamos módulos de biblioteca dentro de la app, pero, con las funciones dinámicas, encontramos una nueva forma de concebir la modularización", comentó Shubham. "La app podía entregarse de forma independiente sin recurrir a dependencias de tiempo de compilación para las funciones, y estas se podían instalar posteriormente".

La primera función que modularizaron fue "Rellenar y firmar". Gracias a Dynamic Delivery, ya no fue necesario que incluyeran todos los recursos específicos de idiomas y de densidad de pantalla en cada APK. Como ya habían dividido sus APK antiguos por cuestiones de arquitectura, no fue necesario que el equipo tomara ninguna medida adicional para que estos fueran compatibles con los paquetes de aplicaciones.

Resultados

Con los paquetes de aplicaciones y la función Dynamic Delivery, se logró reducir el tamaño de la app de Acrobat en 15 MB (aproximadamente del 22% al 25%). En algunos dispositivos, el ahorro de espacio fue incluso mayor: aproximadamente un 30%. El lanzamiento fue perfecto: "No observamos ninguna degradación en el rendimiento y la experiencia de descarga fue excelente", afirmó Shubham, quien atribuye el éxito, en parte, a la facilidad de las pruebas. "Nos basamos en el uso compartido interno de apps, lo que nos proporcionó una perspectiva de la experiencia en Play Store y nos permitió subir apps depurables sin tener que preocuparnos por el control de versiones".

Asimismo, el uso de paquetes permite que el equipo ahorre tiempo, ya que ahora solo necesita cargar un único artefacto en Google Play. "Antes necesitábamos 4 APK diferentes, divididos por arquitectura", explicó Shubham. Ahora solo tenemos un único paquete. También observaron un aumento del 5% al 7% en su porcentaje de conversiones de instalaciones, y menos usuarios se quejan por el tamaño de la app.

En cuanto a Dynamic Delivery, "la instalación de la app es más pequeña y más rápida", dijo Shubham. Antes de la modularización, el equipo solía subir cuatro APK diferentes para cada lanzamiento. Además, como cada APK tenía un código de versión diferente, debían medir las métricas y las estadísticas por separado: un proceso engorroso y propenso a errores. Sin embargo, con los paquetes de aplicaciones, solo necesitan subir un único artefacto con un código de versión exclusivo. "Nos ayudó a simplificar nuestro proceso de desarrollo y ahora podemos compartir compilaciones únicas con nuestros evaluadores, además de asegurarnos de que funcionarán en todos los dispositivos", comentó Shubham.

¿Cuál es el próximo paso? "Queremos experimentar con funciones de entrega condicional para ver los beneficios de la reducción del tamaño de las apps o de Dynamic Delivery de ciertas funciones orientándonos a públicos específicos", comentó Shubham.

Comenzar

Todos los desarrolladores de apps y videojuegos pueden utilizar Android App Bundles. ¡Comienza hoy!