Converter AAB em APK online: o que esta ferramenta realmente faz
O Android App Bundle (.aab) é o formato que o Google Play pede aos desenvolvedores para fazer upload, mas não é algo que você possa instalar em um telefone. Se você tiver um arquivo .aab de um servidor de compilação, um pipeline de CI ou de um colega, primeiro será necessário transformá-lo em um .apk instalável. Esta página oferece duas coisas para esse trabalho: um Construtor de comando AAB para APK interativo que grava o comando bundletool exato para o seu sistema operacional e um Explorador de arquivos AAB que abre o pacote em seu navegador para que você possa ver o que está dentro antes de convertê-lo.
A conversão em si é executada por meio do bundletool oficial do Google, que é um programa Java. Como o bundletool precisa do tempo de execução Java e do acesso ao seu keystore, a etapa de construção real acontece em sua própria máquina, não em nossos servidores. Seu arquivo .aab nunca é carregado em lugar nenhum. O construtor simplesmente elimina as suposições para que você possa copiar um comando correto e pronto para execução, em vez de memorizar nomes de sinalizadores.
AAB vs APK: Por que você não pode simplesmente renomear o arquivo
Muitas pessoas procuram como alterar AAB para APK apenas renomeando a extensão, mas isso nunca funciona. Um .apk é um pacote único e independente que o Android pode instalar diretamente. Um .aab é um contêiner de publicação: ele contém seu código compilado e recursos divididos em módulos e espera que o Google Play ou o bundletool gerem os APKs finais otimizados para dispositivos a partir dele. Renomear o arquivo não descompacta esses módulos nem assina nada, então o Android se recusa a instalá-lo. A única maneira confiável de converter um Pacote de Aplicativos Android para APK é deixar o bundletool construir o conjunto de APKs para você.
Como converter AAB em APK no Windows, Mac e Linux
As etapas são as mesmas em todas as plataformas e apenas o estilo do caminho do arquivo muda, e é por isso que o construtor de comando acima tem uma opção Windows, macOS e Linux. Aqui está o fluxo completo do início ao fim:
- Instale o Java JDK 8 ou mais recente. Execute java -version em um terminal para confirmar se o Java está em seu PATH.
- Baixe o bundletool. Obtenha o bundletool-all.jar mais recente na página oficial de lançamentos do GitHub do Google.
- Construa o conjunto APK. Aponte o bundletool para o seu pacote e deixe-o produzir um arquivo .apks: java -jar bundletool-all.jar build-apks --bundle=app.aab --output=app.apks --mode=universal
- Abra o arquivo .apks. É apenas um arquivo ZIP, então extraia-o e você encontrará universal.apk dentro dele.
- Instale no seu dispositivo. Copie o APK para o seu telefone e carregue-o ou use bundletool install-apks com um dispositivo conectado via USB.
APK universal vs APK dividido: qual você deve construir?
Se você quiser um arquivo que possa ser instalado em qualquer telefone, use --mode=universal. Isso cria um único APK universal do seu AAB que agrupa todas as arquiteturas de CPU, densidade de tela e linguagem em um único pacote. É maior, mas é a opção mais simples para testar, arquivar ou compartilhar uma compilação fora da Play Store. Se você omitir esse modo, o bundletool produzirá APKs divididos ajustados para um dispositivo específico, tornando o download menor, mas exigindo a instalação de todo o conjunto correspondente junto. Para a maioria das pessoas que precisam apenas converter um .aab para uma instalação rápida, o APK universal é a escolha certa.
Assinando o APK que você obtém de um AAB
O Android não instalará um APK a menos que esteja assinado. Para teste, o bundletool pode assinar automaticamente com uma chave de depuração, que é exatamente o que a opção "Usar keystore de depuração" no construtor faz. Se você estiver preparando uma versão de build, por exemplo, para distribuir em seu próprio website, assine-a com seu próprio keystore preenchendo os campos caminho do keystore, senha do keystore, alias da chave e senha da chave. O construtor então adiciona os sinalizadores --ks, --ks-pass, --ks-key-alias e --key-pass para que o APK obtido carregue sua assinatura de produção real em vez de uma assinatura de depuração descartável.
Erros comuns do bundletool e como corrigi-los
Dois problemas surgem repetidamente. A mensagem “bundletool: comando não encontrado” significa que você tentou executar o bundletool como se fosse um comando integrado. É um arquivo JAR, então você sempre o chama com java -jar bundletool-all.jar. O erro "Sem chave/certificado" significa que faltam detalhes de assinatura: adicione --mode=universal para uma compilação de teste não assinada ou forneça seus sinalizadores de keystore conforme descrito acima. A guia Solução de problemas no topo da página cobre mais deles, e o AAB Explorer permite confirmar se seu pacote realmente contém os módulos esperados antes de gastar tempo depurando um comando.
Quando você realmente precisaria converter um AAB?
Os motivos comuns são testar uma versão de lançamento em um dispositivo real antes de publicá-la, entregar uma versão a um testador que não usa o Google Play, manter uma cópia instalável de seu próprio aplicativo para seus registros ou executar o controle de qualidade em hardware que os testes internos da Play Store não alcançam. Seja qual for o motivo, converta apenas pacotes de aplicativos que você tem o direito de usar, como seus próprios builds ou pacotes com os quais você tem permissão clara para trabalhar.