Publicar o primeiro app na Play Store parece simples até você tentar. A documentação oficial
cobre o básico, mas há detalhes que só aparecem quando você está com o projeto aberto e
tentando gerar o build de release. Neste artigo compartilho o processo exato que segui ao
publicar a Calculadora Leankar — meu primeiro app Flutter disponível para
download no Google Play.
O que você precisa antes de começar
Antes de qualquer comando no terminal, confirme que você tem:
O app funcionando em modo release — teste com flutter run --release em um dispositivo físico. Não em emulador.
Keystore de upload — a chave criptográfica que identifica você como dono do app. Você só cria uma vez; perder significa não conseguir publicar atualizações.
Política de Privacidade — obrigatória se o app usa internet, coleta qualquer dado ou integra SDKs de terceiros.
Passo 1: Criar a keystore
A keystore é gerada com o keytool, que já vem com o JDK. Execute no terminal:
Você vai responder perguntas sobre nome, organização e país. A validade de 10.000 dias (~27 anos)
é o padrão recomendado pelo Google. Salve o arquivo .jks e as senhas
em um local seguro — gerenciador de senhas, cofre, backup offline. Perder a keystore
é irreversível.
Passo 2: Configurar a assinatura no projeto Flutter
Crie o arquivo android/key.properties (nunca commite este arquivo no git):
# android/local.properties e key.properties nunca sobem para o repositório
android/key.properties
Em seguida, edite android/app/build.gradle para carregar as propriedades e
assinar o build de release automaticamente. A documentação oficial do Flutter em
docs.flutter.dev/deployment/android
traz o trecho exato de configuração do signingConfigs.
Passo 3: Gerar o App Bundle (AAB)
Prefira o AAB ao APK convencional. O Android App Bundle permite que a
Play Store gere APKs otimizados por dispositivo, reduzindo o tamanho do download do usuário
em até 35%.
flutter build appbundle --release
O arquivo gerado fica em build/app/outputs/bundle/release/app-release.aab.
É esse arquivo que você vai fazer upload no Play Console.
Passo 4: Preparar os assets da loja
A Play Store exige e recomenda os seguintes assets visuais:
Ícone do app: 512×512 px, PNG, fundo não transparente. A loja aplica a máscara de forma automaticamente — não arredonde você mesmo.
Screenshots: mínimo 2, máximo 8 por tipo de dispositivo. Resolução mínima de 320px no lado menor. Mostre o app em uso real, não telas em branco.
Feature Graphic: 1024×500 px, exibido como banner no topo da página do app. Importante para apps em destaque.
Descrição curta: até 80 caracteres — aparecem nos resultados de busca.
Descrição longa: até 4.000 caracteres — use palavras-chave relevantes naturalmente para ASO.
Passo 5: Criar o app no Play Console e fazer o upload
No Play Console, clique em Criar app, defina o nome, idioma padrão e
categoria. Em seguida, vá em Produção → Criar nova versão, faça o upload
do AAB e preencha as notas de versão.
Antes de enviar para revisão, o Play Console vai pedir que você preencha todas as
declarações obrigatórias: classificação etária (IARC), política de privacidade, declaração
de anúncios e permissões usadas. Reserve 30 a 60 minutos para essa etapa na primeira vez.
O processo de revisão: quanto tempo demora?
A primeira publicação de um app novo costuma levar de 3 a 7 dias úteis.
Contas novas ou apps com permissões sensíveis podem demorar mais. Após aprovação, o app
aparece na loja em algumas horas. Atualizações de versões futuras, para contas já
estabelecidas, costumam ser aprovadas em menos de 24 horas.
A Google verifica automaticamente o binário (malware, vulnerabilidades) e revisa
manualmente os metadados da loja, as capturas de tela e a conformidade com as políticas.
Se algo for rejeitado, você recebe um e-mail detalhando o motivo.
Após a publicação: o que monitorar
Avaliações e comentários — responda todos, especialmente os negativos. Isso impacta a percepção do app e mostra que você tem suporte ativo.
Android Vitals — monitore taxa de ANR (App Not Responding) e crashes. Valores acima dos limiares do Google afetam o ranking.
Firebase Crashlytics — integre para receber stack traces detalhados de crashes em produção antes que os usuários reclamem.
Retenção — acompanhe quantos usuários voltam após o primeiro dia, sete dias e trinta dias. É a métrica mais honesta de qualidade.
Publicar o primeiro app é trabalhoso na primeira vez, mas o processo fica natural a partir
do segundo. O investimento de US$ 25 dá acesso permanente à maior loja de apps Android do
mundo — sem taxa por download, sem comissão nos apps gratuitos. Vale cada centavo.
Publishing your first app on the Play Store sounds simple until you actually try it. The
official docs cover the basics, but there are details that only surface once your project is
open and you're trying to generate a release build. In this article I share the exact process
I followed to publish the Calculadora Leankar — my first Flutter app
available for download on Google Play.
What you need before you start
Before running any command in the terminal, make sure you have:
The app working in release mode — test it with flutter run --release on a physical device. Not on an emulator.
An upload keystore — the cryptographic key that identifies you as the app's owner. You only create it once; losing it means you won't be able to publish updates.
A Privacy Policy — required if the app uses the internet, collects any data, or integrates third-party SDKs.
Step 1: Create the keystore
The keystore is generated with keytool, which ships with the JDK. Run this in
the terminal:
You'll be asked questions about name, organization, and country. The 10,000-day validity
(~27 years) is Google's recommended default. Save the .jks file and the
passwords somewhere safe — a password manager, a vault, an offline backup. Losing
the keystore is irreversible.
Step 2: Configure signing in the Flutter project
Create the android/key.properties file (never commit this file to git):
# android/local.properties and key.properties never get committed to the repository
android/key.properties
Next, edit android/app/build.gradle to load the properties and automatically
sign the release build. The official Flutter documentation at
docs.flutter.dev/deployment/android
has the exact signingConfigs configuration snippet.
Step 3: Generate the App Bundle (AAB)
Prefer the AAB over the conventional APK. The Android App Bundle lets the
Play Store generate device-optimized APKs, cutting the user's download size by up to 35%.
flutter build appbundle --release
The generated file is located at build/app/outputs/bundle/release/app-release.aab.
That's the file you'll upload to the Play Console.
Step 4: Prepare the store assets
The Play Store requires and recommends the following visual assets:
App icon: 512×512 px, PNG, non-transparent background. The store applies the shape mask automatically — don't round the corners yourself.
Screenshots: minimum 2, maximum 8 per device type. Minimum resolution of 320px on the shorter side. Show the app in real use, not blank screens.
Feature Graphic: 1024×500 px, shown as a banner at the top of the app's page. Important for featured apps.
Short description: up to 80 characters — appears in search results.
Long description: up to 4,000 characters — naturally include relevant keywords for ASO.
Step 5: Create the app in the Play Console and upload it
In the Play Console, click Create app, set the name, default language, and
category. Then go to Production → Create new release, upload the AAB, and
fill in the release notes.
Before submitting for review, the Play Console will ask you to fill in all the required
declarations: age rating (IARC), privacy policy, ads declaration, and permissions used. Set
aside 30 to 60 minutes for this step the first time.
The review process: how long does it take?
The first publication of a new app usually takes 3 to 7 business days. New
accounts or apps with sensitive permissions can take longer. After approval, the app appears
in the store within a few hours. Future version updates, for established accounts, are
usually approved in under 24 hours.
Google automatically scans the binary (malware, vulnerabilities) and manually reviews the
store metadata, screenshots, and policy compliance. If something is rejected, you receive an
email detailing the reason.
After publishing: what to monitor
Reviews and comments — reply to all of them, especially the negative ones. It affects how the app is perceived and shows you provide active support.
Android Vitals — monitor the ANR (App Not Responding) rate and crashes. Values above Google's thresholds hurt your ranking.
Firebase Crashlytics — integrate it to get detailed stack traces of production crashes before users complain.
Retention — track how many users come back after day one, day seven, and day thirty. It's the most honest quality metric.
Publishing your first app is a lot of work the first time, but the process becomes second
nature from the second one on. The $25 investment gives you permanent access to the largest
Android app store in the world — no per-download fee, no commission on free apps. Worth every
cent.
Check out the apps I've published on the Play Store:
Publicar la primera app en la Play Store parece simple hasta que lo intentas. La
documentación oficial cubre lo básico, pero hay detalles que solo aparecen cuando tienes el
proyecto abierto e intentas generar el build de release. En este artículo comparto el proceso
exacto que seguí para publicar la Calculadora Leankar — mi primera app
Flutter disponible para descargar en Google Play.
Qué necesitas antes de empezar
Antes de cualquier comando en la terminal, confirma que tienes:
La app funcionando en modo release — pruébala con flutter run --release en un dispositivo físico. No en un emulador.
Keystore de subida — la clave criptográfica que te identifica como propietario de la app. Solo la creas una vez; perderla significa no poder publicar actualizaciones.
Política de Privacidad — obligatoria si la app usa internet, recopila algún dato o integra SDKs de terceros.
Paso 1: Crear el keystore
El keystore se genera con keytool, que ya viene con el JDK. Ejecuta en la
terminal:
Responderás preguntas sobre nombre, organización y país. La validez de 10.000 días (~27 años)
es el estándar recomendado por Google. Guarda el archivo .jks y las
contraseñas en un lugar seguro — gestor de contraseñas, bóveda, copia de seguridad
offline. Perder el keystore es irreversible.
Paso 2: Configurar la firma en el proyecto Flutter
Crea el archivo android/key.properties (nunca lo subas a git):
# android/local.properties y key.properties nunca se suben al repositorio
android/key.properties
A continuación, edita android/app/build.gradle para cargar las propiedades y
firmar el build de release automáticamente. La documentación oficial de Flutter en
docs.flutter.dev/deployment/android
trae el fragmento exacto de configuración de signingConfigs.
Paso 3: Generar el App Bundle (AAB)
Prefiere el AAB frente al APK convencional. El Android App Bundle permite
que la Play Store genere APKs optimizados por dispositivo, reduciendo el tamaño de descarga
del usuario hasta en un 35%.
flutter build appbundle --release
El archivo generado se ubica en build/app/outputs/bundle/release/app-release.aab.
Ese es el archivo que subirás a Play Console.
Paso 4: Preparar los assets de la tienda
La Play Store exige y recomienda los siguientes assets visuales:
Ícono de la app: 512×512 px, PNG, fondo no transparente. La tienda aplica la máscara de forma automáticamente — no la redondees tú mismo.
Capturas de pantalla: mínimo 2, máximo 8 por tipo de dispositivo. Resolución mínima de 320px en el lado más corto. Muestra la app en uso real, no pantallas en blanco.
Feature Graphic: 1024×500 px, se muestra como banner en la parte superior de la página de la app. Importante para apps destacadas.
Descripción corta: hasta 80 caracteres — aparece en los resultados de búsqueda.
Descripción larga: hasta 4.000 caracteres — usa palabras clave relevantes de forma natural para ASO.
Paso 5: Crear la app en Play Console y subir el archivo
En Play Console, haz clic en Crear app, define el nombre, idioma
predeterminado y categoría. Luego ve a Producción → Crear nueva versión,
sube el AAB y completa las notas de la versión.
Antes de enviar a revisión, Play Console te pedirá que completes todas las declaraciones
obligatorias: clasificación por edad (IARC), política de privacidad, declaración de anuncios
y permisos usados. Reserva de 30 a 60 minutos para este paso la primera vez.
El proceso de revisión: ¿cuánto tarda?
La primera publicación de una app nueva suele tardar de 3 a 7 días hábiles.
Las cuentas nuevas o las apps con permisos sensibles pueden tardar más. Tras la aprobación, la
app aparece en la tienda en unas horas. Las actualizaciones de futuras versiones, para cuentas
ya establecidas, suelen aprobarse en menos de 24 horas.
Google verifica automáticamente el binario (malware, vulnerabilidades) y revisa manualmente
los metadatos de la tienda, las capturas de pantalla y el cumplimiento de las políticas. Si
algo es rechazado, recibes un correo detallando el motivo.
Después de publicar: qué monitorear
Reseñas y comentarios — responde a todos, especialmente a los negativos. Esto impacta la percepción de la app y demuestra que ofreces soporte activo.
Android Vitals — monitorea la tasa de ANR (App Not Responding) y los crashes. Los valores por encima de los umbrales de Google afectan el ranking.
Firebase Crashlytics — intégralo para recibir stack traces detallados de los crashes en producción antes de que los usuarios se quejen.
Retención — sigue cuántos usuarios vuelven después del primer día, siete días y treinta días. Es la métrica más honesta de calidad.
Publicar la primera app da trabajo la primera vez, pero el proceso se vuelve natural a partir
de la segunda. La inversión de US$ 25 da acceso permanente a la tienda de apps Android más
grande del mundo — sin tarifa por descarga, sin comisión en apps gratuitas. Vale cada centavo.