A Adobe reduz o tamanho do app em 20% com pacotes de apps e dynamic delivery

As ferramentas de produtividade e criatividade da Adobe estão ajudando as pessoas desde 1982. Porém, embora apps Adobe como Photoshop, Illustrator e Lightroom sejam amados por pessoas criativas há décadas, é o modesto PDF (que a Adobe inventou há quase 30 anos), que pode ser o nome mais familiar.

O principal app para dispositivos móveis Android da Adobe, Adobe Acrobat Reader, é o padrão global gratuito para visualização, assinatura e comentários confiáveis em documentos PDF, com mais de 500 milhões de downloads. E depois de todos esses anos, ele fica cada vez melhor. "No ano passado, adicionamos um grande número de recursos ao aplicativo para Android", disse Shubham Garg, cientista da computação na Adobe. Mas, embora os usuários adorassem os novos recursos, eles também começaram a perceber o aumento do tamanho do aplicativo, o que levou a menos conversões. Isso foi um problema, "especialmente em economias em desenvolvimento, onde vemos ambos os problemas serem mais proeminentes", disse Shubham.

O que a equipe fez

O Android App Bundles permitiu que a Adobe reduzisse o tamanho do app da Acrobat sem muito esforço. "Foi muito fácil mover para pacotes de apps", afirmou Shubham. "Nosso app já era compatível com a versão mínima do SDK do Android e com os requisitos do Gradle, portanto, o app passou a exigir mudanças de código insignificantes da nossa parte." Depois de transferir uma cópia da chave de assinatura com segurança para o Google, ele disse que o lançamento foi fácil.

Além do agrupamento, a Adobe optou por modificar vários recursos do app para reduzir ainda mais o tamanho do app. "Já estávamos usando módulos de biblioteca dentro do aplicativo, mas os recursos dinâmicos nos apresentaram uma maneira diferente de pensar sobre a modularização", diz Shubham. "O aplicativo pode ser entregue de forma independente, sem as dependências de tempo de compilação nos recursos, e estes poderiam ser instalados posteriormente."

O primeiro recurso modularizado foi "Preencher e assinar". Com o Dynamic Delivery, não era mais necessário incluir todas as densidades de tela e recursos específicos de idioma em cada APK. Como já haviam dividido os APKs antigos por arquitetura, a equipe não precisava fazer nenhum trabalho adicional para torná-los compatíveis com os pacotes de apps.

Resultados

Os pacotes de apps e a dynamic delivery reduziram o tamanho do app do Acrobat em 15 MB, ou cerca de 22% a 25%. Em alguns dispositivos, a economia foi ainda maior, por volta de 30%. E o lançamento funcionou perfeitamente: "Não tínhamos experiência com a degradação do desempenho e a experiência de download foi tranquila", disse Shubham. Ele dá crédito, em parte, à facilidade de teste. "Confiamos no compartilhamento interno de apps, que nos ofereceu uma experiência na Play Store e, ao mesmo tempo, permitiu o upload de apps depuráveis, sem ter preocupações com o controle de versão."

O agrupamento também economiza o tempo da equipe, visto que agora é necessário fazer o upload de um único artefato no Google Play. "Antes dependíamos de quatro APKs diferentes, divididos por arquitetura," disse Shubham. Agora, há um único pacote. A empresa também observou um aumento de 5% a 7% na taxa de conversão de instalação, e poucos usuários estão reclamando sobre o tamanho do app.

Quanto à dynamic delivery, "a instalação do aplicativo é menor e mais rápida", disse Sahubham. Antes da modularização, a equipe costumava fazer o upload de quatro APKs diferentes para cada versão. Além disso, como cada APK tinha um código de versão diferente, era necessário avaliar separadamente as métricas e análises, um processo complicado e propenso a erros. Porém, com pacotes de apps, era necessário fazer upload de apenas um único artefato com um único código de versão. "Isso nos ajudou a simplificar o processo de desenvolvimento, e agora podemos compartilhar versões individuais com nossos testadores, e ter certeza de que ele funcionará em todos os dispositivos", diz Shubham.

E agora? "Queremos testar os recursos de entrega condicional para ver os benefícios da redução do tamanho do app ou da dynamic delivery de determinados recursos ao segmentar públicos-alvo específicos", diz Shubham.

Primeiros passos

Todos os desenvolvedores de apps e jogos podem usar os Android App Bundles. Comece a usar hoje mesmo!