Nesta semana, o Google organizou dois eventos focados em desenvolvedores. Um deles é o Android Dev Summit, uma conferência nos Estados Unidos e transmitida pela internet; e o outro é o PlayTime, organizado em São Paulo com foco em programadores de toda a América Latina.
Em ambos os casos, o foco da empresa foi em apresentar soluções para convencer desenvolvedores a reduzirem os tamanhos dos apps que eles colocam no Google Play, a loja de aplicativos do Android. E, segundo os executivos da empresa, este é um dos maiores problemas do sistema operacional.
Mais de 40% de todos os smartphones na América Latina têm menos de 1 GB de espaço livre na memória interna, segundo o Google. Isso se deve ao fato de que apps têm ficado cada vez mais pesados. Desde 2012, o tamanho dos aplicativos disponíveis na Play Store cresceu, em média, cinco vezes.
E ainda segundo o Google, a cada cinco desinstalações, uma é motivada por falta de espaço no celular. “Se o seu aplicativo ocupa muito espaço, ele tem mais chances de ser desinstalado quando o usuário precisar liberar memória”, afirma Raj Ajrawat, especialista em produto para plataformas do Android.
No começo deste ano, o Google apresentou aos desenvolvedores uma maneira de tentar solucionar o problema. Trata-se de um novo formato de publicação de aplicativos para a Play Store que substitui o APK. O nome da novidade é Android App Bundle, e Raj explicou durante o PlayTime como ele funciona.
Atualmente, quando um desenvolvedor quer subir um aplicativo para o Google Play, ele precisa submeter um APK, um programa fechado com todos os recursos e todas as configurações básicas do software, para o Google Play Console. Isso passa a ser um problema quando pensamos na fragmentação e na complexidade do ecossistema Android.
Um APK submetido ao Google Play precisa ter tudo o que for necessário para rodar num celular com tela HD, Full HD ou Quad HD, para rodar num processador de entrada ou num top de linha, num tablet ou num smartphone, num aparelho com notch ou numa tela retangular de 16:9. E isso aumenta o tamanho do arquivo.
Quando você instala um app no celular, ele vem com tudo isso no mesmo pacote mesmo que não precise. Ou seja: mesmo que o seu aparelho seja um Moto G, o app submetido como um APK tradicional instala também as informações e os códigos necessários para rodar em um Galaxy S9. Mesmo que eles não sejam necessários para rodar no Moto G.
Resultado: muito espaço consumido à toa na sua memória. Com o Android App Bundle, o código do aplicativo é desmembrado. Quando uma pessoa instala um app publicado por meio deste novo formato, a Play Store libera só o que é necessário. Se o seu celular for um Moto G, ele vai baixar só os códigos necessários para o Moto G, sem as informações inúteis do Galaxy S9.
Isso permite downloads mais rápidos e menos espaço ocupado na memória interna do seu celular. Os desenvolvedores do app de delivery de comida Swiggy (disponível só nos EUA) trocaram o método APK pelo App Bundle. Segundo eles, o novo formato reduziu o tamanho do app em quase 23%. O Airbnb, por sua vez, viu uma redução de 11%, e o LinkedIn ficou 23% menor.
Recursos dinâmicos
O Facebook é um caso famoso de aplicativo pesado. Muita gente decide apagá-lo do celular e usar apenas a versão para navegador para economizar não só espaço, mas bateria, RAM e até poder de processamento. Tudo porque a rede social está constantemente testando e disponibilizando novos e pesados recursos.
Mas nem todos esses recursos são úteis para todo mundo. É provável que a imensa maioria dos usuários de Facebook use o app para compartilhar posts. Mas nem todos usam os filtros de realidade aumentada da câmera, por exemplo. Menos ainda usam o mapa interno para localizar amigos nas imediações. E tudo isso está lá, ocupando espaço inútil.
Pensando nisso, o Google desenvolveu uma ferramenta chamada “Dynamic features“, ou “Recursos dinâmicos”. Agora desenvolvedores podem disponibilizar aplicativos na Play Store só com as funções mais usadas. Depois, se um usuário quiser, ele pode baixar funções extras separadamente.
Utilizando o exemplo do Facebook, é como se você baixasse uma versão básica da rede social, mas se realmente quisesse os filtros de realidade aumentada, pudesse baixá-los separadamente para usar na hora em que precisar. “Isso evita que espaço seja ocupado por algo que não é usado durante toda a vida útil do aplicativo”, explica Dom Elliott, gerente de produto do Google Play.
Nesta semana, o Google também anunciou mudanças para o sistema de update dos aplicativos que permitirá que usuários continuem executando apps enquanto eles são atualizados. Desenvolvedores também podem agora “forçar” usuários a instalarem as novas atualizações com um alerta de tela cheia que impede o uso do app até que o update seja baixado.
Tudo isso faz parte do plano do Google para ajudar desenvolvedores a “gerar mais instalações e menos desinstalações com um aplicativo menor e mais eficiente, e um lançamento mais rápido e simplificado”. Mas acaba atingindo também o usuário final. Afinal, quem não gosta de economizar espaço no Android?