- 1
Apple Developer Program
US$ 99/ano. Apple ID corporativa com 2FA. Aprovação D-U-N-S pode levar 1–3 dias úteis.
- 2
Criar certificados, App ID e Provisioning Profile
Distribution Certificate + App ID com bundle app.meiraisp.client + Provisioning Profile para App Store.
- Apple Distribution Certificate (.cer instalado no Keychain)
- App ID com bundle app.meiraisp.client
- Provisioning Profile (App Store) vinculado ao certificado
- APNs Auth Key (.p8) — necessária para push em iOS
- 3
Conversão e validação de certificados
Comandos úteis para converter .cer → .p12 e validar profiles. Necessário só se for usar os certs em outro Mac.
# Converter .cer Apple para .p12 (necessário se for usar em outro Mac) openssl pkcs12 -export \ -inkey private_key.pem \ -in apple_distribution.pem \ -out apple_distribution.p12 # Verificar provisioning profile security cms -D -i meira_appstore.mobileprovision
- 4
ExportOptions.plist com TEAM_ID
Necessário para que o flutter build ipa saiba como assinar o IPA. Edite TEAM_ID para o seu Apple Team ID (10 chars).
Salve em
meira_app/ios/ExportOptions.pliste substituaTEAM_ID. - 5
Configurar Info.plist
Adicione chaves de FaceID, ATT, push background e bundle. Algumas já existem — só confira e adicione as faltantes.
Merge dentro do
<dict>raiz deios/Runner/Info.plist. - 6
Capabilities no Xcode
Abra Runner.xcworkspace → Runner → Signing & Capabilities. Habilite:
- Push Notifications
- Background Modes → Remote notifications + Background fetch
- Sign in with Apple (se for usar)
- Automatically manage signing (recomendado)
- 7
Criar app no App Store Connect
Novo app iOS → idioma pt-BR → bundle app.meiraisp.client → SKU único.
- 8
Ativos da App Store
Capturas em todas as proporções obrigatórias.
- iPhone 6.7" (1290×2796) — ≥3 telas
- iPhone 6.5" (1242×2688) — ≥3 telas
- iPad Pro 12.9" (2048×2732) — ≥3 telas (se publicar pra iPad)
- Ícone 1024×1024 PNG sem alpha, sem cantos arredondados
- Preview vídeo H.264 (opcional)
- 9
Compilar o IPA no seu Mac
Build assinado com Distribution Cert, modo release.
cd meira_app flutter build ipa --release \ --build-name=1.0.0 --build-number=1 \ --export-options-plist=ios/ExportOptions.plist # Saída: # build/ios/ipa/meira_app.ipa # Submeta com Transporter (Mac App Store) ou via CLI abaixo.
- 10
Upload para App Store Connect
Use Transporter (GUI) ou xcrun altool (CLI). Processo: upload → processamento Apple (~15-30 min) → aparece em TestFlight.
# Guarde sua senha de app-specific no Keychain primeiro: # xcrun altool --store-password-in-keychain-item AC_PASSWORD \ # -u apple-id@meiraisp.app -p <app-specific-password> xcrun altool --upload-app \ -f build/ios/ipa/meira_app.ipa \ -t ios \ -u apple-id@meiraisp.app \ -p @keychain:AC_PASSWORD
- 11
Privacy Nutrition Label + ATT
No App Store Connect → Privacy → preencher quais dados o app coleta. Se coletar IDFA, app DEVE mostrar prompt ATT na primeira execução.
- 12
TestFlight → revisão Apple → produção
TestFlight interno (até 100 testers do time) → externo (até 10k). Revisão Apple: 24–48h em média, pode levar até 7 dias.
Identificação do app
Configuração base
Atalhos rápidos
Baixar tudo de uma vez
Pré-revisão
Antes de submeter à Apple
- · Privacy Nutrition Label completo
- · Test account funcional (login demo)
- · Screenshots em todas as proporções
- · Push notifications funcionando em TestFlight
- · FaceID com mensagem clara
- · Sem crash em iPhone 15 / iOS 17