APK vs AAB — qual você realmente precisa?
Antes de converter, esclareça o objetivo. Um APK e um AAB não são intercambiáveis — cada um tem um caso de uso específico.
| Formato | Caso de uso | Instalável diretamente? |
|---|---|---|
| .apk | Sideloading, Amazon Appstore, Samsung Galaxy Store, testes no dispositivo | Sim |
| .aab | Google Play Console (obrigatório desde ago. 2021) — Play gera APKs otimizados por dispositivo | Não (somente Play Store) |
O SaasToStore gera ambos os formatos a partir de um único build. Você recebe o .apk e o .aab no mesmo email.
Método 1: Trusted Web Activity (TWA) — o caminho recomendado pelo Google
Uma Trusted Web Activity encapsula sua PWA dentro do Chrome no Android. O app executa sua URL web real — sem duplicação de código, sem base de código móvel separada. É o método que o Google documenta oficialmente para publicar PWAs no Google Play, e produz o menor app Android possível (frequentemente abaixo de 1 MB).
Requisitos para um build TWA
- HTTPS — obrigatório. URLs HTTP são rejeitadas pelo runtime do TWA
- Web manifest — deve incluir
name,start_url,display: "standalone",theme_colore ícones ≥ 512×512 - Service worker — fortemente recomendado. Controla o comportamento offline e qualifica para o requisito de funcionalidade mínima do Google Play
- Digital Asset Links — o SaasToStore os configura automaticamente via o arquivo
/.well-known/assetlinks.json - Pontuação PWA ≥ 70 — verificada pelo Lighthouse ou pelo verificador integrado do SaasToStore
Limitações do TWA que você deve conhecer
- O app requer que o Chrome esteja instalado no dispositivo (está em 99 % dos celulares Android)
- A barra de navegação (barra de URL) é ocultada somente quando os Digital Asset Links são verificados corretamente
- Sem acesso a APIs nativas do Android que vão além do que o navegador expõe via o padrão PWA
- O tamanho do app depende do motor de renderização do Chrome, não do código empacotado — a inicialização é instantânea
Método 2: Capacitor — quando sua PWA não tem service worker
O Capacitor (da Ionic) encapsula seu web app em um componente WebView nativo. Ao contrário de um WebView puro, o Capacitor gera um app Android corretamente assinado e conforme às políticas que passa na revisão de funcionalidade mínima do Google Play. Não requer service worker, tornando-o o fallback para apps Bubble, sites Webflow sem suporte SW e qualquer URL com pontuação abaixo de 70.
Quando escolher Capacitor em vez de TWA
TWA vs Capacitor — comparação lado a lado
| Funcionalidade | TWA | Capacitor |
|---|---|---|
| Requer service worker | Sim (recomendado) | Não |
| Pontuação PWA mínima | ≥ 70 | Nenhuma |
| Tamanho do arquivo do app | ~800 KB | ~4 MB |
| APIs nativas Android | Somente via APIs do navegador | Via plugins (câmera, GPS, etc.) |
| Risco de rejeição Play Store | Muito baixo (método oficial) | Baixo (WebView conforme às políticas) |
| Funciona no Bubble / Softr / Framer | Depende do service worker | Sim, sempre |
| Modo offline | Controle SW completo | Cache fallback |
PWA para APK em 5 minutos — passo a passo
O SaasToStore executa ambos os pipelines no servidor. Você não instala nada localmente.
Verificar sua pontuação PWA (grátis, sem conta)
Acesse a página inicial do SaasToStore e cole sua URL. O verificador executa uma auditoria equivalente ao Lighthouse em ~10 segundos: HTTPS, completude do manifest, service worker, tamanhos de ícones. Você verá sua pontuação e o tipo de build recomendado.
Criar um projeto e configurar a identidade do seu app
Faça login, crie um novo projeto, confirme a URL. Defina seu nome de app (exibido na Play Store, máx. 30 caracteres), ID do pacote (ex. com.suaempresa.app — não pode ser alterado após a primeira publicação) e o código de versão inicial (comece em 1).
Fazer upload do seu ícone de 512×512
PNG, quadrado, sem cantos arredondados (o Android gerencia a máscara). Se não tiver um, o gerador de IA do SaasToStore cria um ícone a partir de uma descrição de texto em menos de 30 segundos.
Selecionar TWA ou Capacitor, lançar o build
O verificador recomenda automaticamente. Você pode alterar. Clique em «Lançar Build». O pipeline roda no servidor do SaasToStore — análise do manifest, geração do keystore, compilação, assinatura do APK. Sem fila.
Receber seu .apk e .aab por email
O build é concluído em 2 a 5 minutos. Você recebe um email com três anexos: o .aab assinado (para o Google Play), o .apk assinado (para sideload/stores alternativos) e o arquivo keystore criptografado (guarde-o — você precisará dele para cada atualização).
Lista de verificação de prontidão PWA antes de converter
Execute esta lista nas DevTools do seu navegador (aba Lighthouse) ou com o verificador gratuito do SaasToStore:
- ✓Site servido sobre HTTPS com certificado válido
- ✓manifest.json vinculado no <head> com name, start_url, display: standalone
- ✓Pelo menos um ícone ≥ 512×512 PNG no manifest
- ✓theme_color definido (usado para a cor da barra de ferramentas Android)
- ✓Service worker registrado e controlando o escopo (aba Application → Service Workers)
- ✓Página de fallback offline (ou pelo menos uma estratégia cache-first)
- ✓App carrega em < 5 segundos em uma conexão 4G
- ✓Sem conteúdo misto (recursos HTTP em páginas HTTPS)
Erros comuns e como corrigi-los
Erro: «App rejeitado — funcionalidade mínima (política 4.3)»
Causa: WebView puro sem service worker ou funcionalidades PWA significativas. Solução: Use o modo TWA do SaasToStore com um manifest validado e service worker. O modo Capacitor do SaasToStore também passa na 4.3 por design.
Erro: «Verificação de Digital Asset Links falhou»
Causa: O arquivo assetlinks.json está ausente ou a impressão digital SHA-256 não corresponde ao build. Solução: O SaasToStore gera e hospeda o assetlinks.json automaticamente — ou fornece o conteúdo exato para adicionar ao seu diretório /.well-known/.
Erro: «keystore não encontrado na atualização»
Causa: Reconstrução com um novo keystore. Solução: Sempre use o mesmo projeto SaasToStore para atualizações. O keystore original é criptografado, armazenado e reutilizado automaticamente em cada reconstrução. Um novo keystore = Google Play rejeita a atualização.
Aviso: «Chrome não instalado» no dispositivo
Contexto: TWA requer Chrome. Em 99 % dos dispositivos Android ele vem pré-instalado. Se você estiver visando um dispositivo OEM específico que exclui Chrome (raro, somente enterprise), use o modo Capacitor.
Distribuindo seu APK além do Google Play
O .apk assinado que você recebe funciona em qualquer canal de distribuição Android:
- Amazon Appstore — conta gratuita, upload de APK, revisão em ~24 h. Mais de 170M usuários de Fire TV + tablet
- Samsung Galaxy Store — conta gratuita, upload de APK. Pré-instalado em todos os dispositivos Android Samsung
- Sideload direto — compartilhe o arquivo .apk via link, QR code ou email. Os usuários habilitam «instalar de fontes desconhecidas» uma vez
- MDM Empresarial — distribua o APK via ferramentas de Mobile Device Management para distribuição somente interna