Índice
1. Pré-requisitos gerais
Antes de iniciar, você precisa ter o ambiente Flutter configurado e as contas nas lojas criadas:
- Flutter SDK atualizado (
flutter upgradeeflutter doctorsem erros críticos). - Conta Google Play Developer — taxa única de $25.
- Conta Apple Developer — assinatura anual de $99 (obrigatória para publicar na App Store).
- Mac com Xcode instalado para gerar o build iOS (não é possível sem Mac).
- Java/JDK instalado para gerar a keystore Android.
⚠️ Para o iOS, você obrigatoriamente precisa de um Mac. Não há como gerar um build Flutter para iOS no Windows ou Linux.
2. Configurar o projeto Flutter
Antes de gerar qualquer build, confirme estas configurações no projeto:
Versão do app
Defina a versão corretamente: version: 1.0.0+1. O número antes do "+" é o versionName (visível ao usuário) e o número após é o versionCode (incremental). O versionCode precisa ser maior que o do último upload.
Package name
Verifique em android/app/build.gradle se o applicationId é o identificador único e definitivo do seu app (ex: com.empresa.meuapp). Após publicado, não pode ser alterado.
Bundle ID
No Xcode (ou em ios/Runner.xcodeproj), confirme o Bundle Identifier. Ele precisa coincidir exatamente com o registrado no App Store Connect.
3. Publicar no Google Play (Android)
Gerar a keystore
Execute no terminal para criar a keystore que assina seu app:
keytool -genkey -v -keystore upload-keystore.jks -keyalg RSA -keysize 2048 -validity 10000 -alias upload
⚠️ Guarde o arquivo .jks e as senhas em local seguro. Se perder a keystore, não poderá atualizar o app nas lojas.
Configurar build.gradle
Em android/app/build.gradle, configure a assinatura apontando para a keystore gerada. Crie também um arquivo key.properties na raiz do Android com as credenciais.
Gerar o AAB
O Google Play exige o formato AAB desde 2021. Para gerar:
flutter build appbundle --release
O arquivo será gerado em build/app/outputs/bundle/release/app-release.aab.
Upload no Play Console
Acesse play.google.com/console, crie o app, preencha as fichas da loja (ícone, screenshots, descrição) e faça o upload do AAB na faixa de produção. O tempo de revisão varia de algumas horas a 3 dias.
4. Publicar na App Store (iOS)
Configurar assinatura no Xcode
Abra ios/Runner.xcworkspace no Xcode. Em Signing & Capabilities, selecione seu time (Apple Developer Account) e deixe o Xcode gerenciar a assinatura automaticamente (Automatically manage signing).
Criar o app no App Store Connect
Acesse appstoreconnect.apple.com, crie um novo app com o mesmo Bundle ID do projeto. Preencha nome, idioma primário e SKU.
Gerar o build iOS
flutter build ios --release
Em seguida, no Xcode: Product → Archive. Após o archive, clique em Distribute App → App Store Connect → Upload.
Submeter para revisão
No App Store Connect, aguarde o build aparecer (pode levar até 30 minutos), preencha as informações de venda, precificação, classificação etária e screenshots. Clique em Adicionar para Revisão. A Apple leva em média 1–3 dias úteis.
5. Diferenças entre as lojas
Google Play
- Formato: AAB (obrigatório)
- Taxa: $25 única
- Revisão: horas a 3 dias
- Ferramenta: Play Console
- Assinatura: keystore .jks
App Store
- Formato: .ipa via Xcode
- Taxa: $99/ano
- Revisão: 1–3 dias úteis
- Ferramenta: App Store Connect
- Assinatura: Certificado Apple
6. Erros comuns ao publicar Flutter
- CocoaPods desatualizado: execute
sudo gem install cocoapodsepod installdentro da pastaios/. - versionCode não incrementado: o Play Console rejeita uploads com o mesmo versionCode do anterior.
- Bundle ID incorreto: o Bundle ID no Xcode precisa ser idêntico ao cadastrado no App Store Connect.
- Provisioning profile expirado: renove o perfil de distribuição no Apple Developer Portal antes de gerar o archive.
- Keystore perdida: sem ela, é impossível atualizar o app. Guarde em múltiplos locais seguros.
💡 Dica: Use o guia específico para Google Play ou o guia para App Store para um passo a passo mais detalhado de cada loja.
Cansa publicar e rejeições travam você?
A AtlasTech cuida de toda a publicação do seu app Flutter — configuração, assinatura, upload e aprovação nas duas lojas.
Quero publicar meu Flutter7. Prefere delegar tudo?
Publicar um app Flutter nas duas lojas envolve configurar keytores, certificados, perfis de provisionamento, Xcode e ainda lidar com possíveis rejeições. Muitos desenvolvedores preferem focar no código e delegar o processo de publicação para especialistas.
A AtlasTech realiza a publicação completa do seu app Flutter — Android e iOS — com garantia de aprovação. Solicite um orçamento.