Um Android App Bundle é um formato de publicação que inclui todos os recursos e códigos compilados do seu app e adia a geração e a assinatura do APK no Google Play.
O Google Play usa o pacote de apps para gerar e disponibilizar APKs otimizados para cada configuração de dispositivo. Assim, somente o código e os recursos necessários para um dispositivo específico são salvos para executar o app. Não é mais necessário criar, assinar e gerenciar vários APKs para otimizar a compatibilidade com dispositivos diferentes, e os usuários recebem downloads menores e mais otimizados.
Na maioria dos projetos de app, não é necessário muito esforço para criar pacotes de apps compatíveis com a veiculação de APKs otimizados. Por exemplo, se você já organiza o código e os recursos do app de acordo com as convenções estabelecidas, basta criar Android App Bundles assinados usando o Android Studio ou a linha de comando e enviá-los para o Google Play. A veiculação otimizada do APK torna-se um benefício automático.
Ao usar o formato de pacote de apps para publicá-lo, você também tem a opção de usar o Envio de recursos do Google Play, que permite adicionar módulos de recursos ao projeto do app. Esses módulos contêm funções e recursos que somente são incluídos no seu app com base nas condições que você especifica, ou que estão disponíveis posteriormente no ambiente de execução para download Como usar a Biblioteca Play Core.
Os desenvolvedores de jogos que publicam apps com pacotes podem usar o Play Asset Delivery: a solução do Google Play para fornecer grandes quantidades de recursos de jogos que oferecem aos desenvolvedores métodos de envio flexíveis e alto desempenho.
Assista o vídeo a seguir para ter uma visão geral do motivo para publicar seu app usando os Android App Bundles.
Restrição de tamanho de download compactado
A publicação com Android App Bundles ajuda os usuários a instalar seu app com os menores downloads possíveis e aumenta o limite de tamanho de download compactado para 150 MB. Ou seja, quando um usuário faz o download do seu app, o tamanho total dos APKs compactados exigidos para instalá-lo (por exemplo, APK base + APKs de configuração) precisa ser de, no máximo, 150 MB. Qualquer download subsequente, como o download de um módulo de recurso (e seus APKs de configuração) sob demanda, também precisa atender a essa restrição de tamanho de download compactado. Os pacotes de recursos não contribuem para esse limite de tamanho, mas têm outras restrições de tamanho.
Se o Play Console descobrir durante o upload que um dos possíveis downloads do app ou dos recursos sob demanda tem mais de 150 MB, você receberá um erro.
Lembre-se de que os Android App Bundles não são compatíveis com
arquivos de expansão de APK (*.obb
). Portanto, se você encontrar esse erro ao publicar seu pacote de apps, use
um dos seguintes recursos para reduzir os tamanhos de download de APK compactados:
- Ative todos os APKs de configuração
definindo
enableSplit = true
para cada tipo de APK de configuração. Isso garante que os usuários façam o download apenas do código e dos recursos necessários para executar o app no dispositivo deles. - Reduza seu app removendo códigos e recursos não utilizados.
- Siga as práticas recomendadas para reduzir o tamanho do app ainda mais.
- Considere converter recursos que são usados apenas por alguns dos usuários em módulos de recursos que podem ser baixados posteriormente, sob demanda. Lembre-se de que isso pode exigir certo nível de refatoração do seu app. Portanto, tente usar as outras sugestões descritas acima primeiro.
Outras considerações
Veja a seguir os problemas conhecidos ao criar ou exibir seu app com os Android App Bundles. Se você tiver problemas que não estão descritos abaixo, informe um bug.
- As instalações parciais de apps transferidos por sideload (ou seja, apps que não são instalados pela Google Play Store e não têm um ou mais APKs divididos necessários) falham em todos os dispositivos certificados pelo Google e dispositivos com Android 10 (API de nível 29) ou mais recente. Ao fazer o download do seu app na Google Play Store, o Google garante que todos os componentes necessários estejam instalados.
- Se você usa ferramentas que modificam dinamicamente as tabelas de recursos, os APKs gerados em pacotes de apps podem se comportar de maneira inesperada. Portanto, é recomendável desativar essas ferramentas ao criar um pacote de apps.
- Atualmente, é possível configurar propriedades na configuração
do build de um módulo de recurso que entram em conflito com as configurações dos
módulos base ou outros. Por exemplo, você pode definir
buildTypes.release.debuggable = true
no módulo base e defini-lo comofalse
em um módulo de recurso. Esses conflitos podem causar problemas na criação e no ambiente de execução. Lembre-se de que, por padrão, os módulos de recursos herdam algumas configurações do build do módulo base. Portanto, é necessário compreender quais configurações precisam ser mantidas e quais precisam ser omitidas na configuração do build do módulo de recurso.
Outros recursos
Para saber mais sobre Android App Bundles, consulte os seguintes recursos.
Postagens do blog
- Como criar seu primeiro pacote de apps
- O que um novo formato de publicação representa para o futuro do Android
- Novos recursos para desenvolver, lançar e expandir seus negócios no Google Play (link em inglês)
- As atualizações mais recentes do Android App Bundle, incluindo a API de outros idiomas
- Plaid : uma história de modularização (em inglês)
- Siga o Papai Noel no Google: mudança para o Android App Bundle
- Ferramentas para desenvolvedores no Play Console
Vídeos
- Tudo o que você precisa saber sobre a Assinatura de apps do Google Play
- Como criar seu primeiro pacote de apps
- Pacotes de apps: testes com o Bundletool e o Play Console
- Entrega personalizável com o Android App Bundle e o fácil compartilhamento de compilações de teste
- Novas ferramentas para otimizar o tamanho do seu app e aumentar as instalações no Google Play