Elementos necesarios antes de publicar su aplicación Flutter en Android
Antes de publicar su aplicación Flutter en Google Play Store, es fundamental preparar varios elementos para garantizar una presentación profesional y cumplir con los requisitos de la plataforma. Aquí están las etapas clave que debe seguir.
Preparar el icono de su aplicación
El icono de su aplicación es lo primero que los usuarios verán. Debe ser atractivo y estar adaptado a los diferentes formatos requeridos por Android. Puede diseñarlo con herramientas como Canva, Adobe Illustrator u otras plataformas de diseño gráfico. Una vez listo, debe convertirlo a los formatos exigidos por Android.
Android requiere varios tamaños de iconos para diferentes tipos de pantallas:
- mipmap-hdpi (72×72 px)
- mipmap-mdpi (48×48 px)
- mipmap-xhdpi (96×96 px)
- mipmap-xxhdpi (144×144 px)
- mipmap-xxxhdpi (192×192 px)
Una solución práctica es utilizar herramientas como App Icon Generator, que genera automáticamente todas las versiones necesarias para Android e iOS. Después de descargar el archivo, descomprímalo y coloque las diferentes versiones de los iconos en los directorios correspondientes de su proyecto Flutter.
Sustituir los archivos de iconos en su proyecto
Una vez generados los iconos en los formatos adecuados, colóquelos en el siguiente directorio de su proyecto:
android/app/src/main/res
Reemplace los archivos de icono predeterminados por los suyos en las carpetas mipmap correspondientes.
Preparar capturas de pantalla, un banner y un logo para Google Play
Google Play exige que proporcione ciertos elementos gráficos, como capturas de pantalla, un banner y un logo, para la página de presentación de su aplicación. Estos elementos son esenciales para captar la atención de los usuarios y mostrar las características principales de su app.
- Capturas de pantalla: Proporcione al menos cuatro imágenes con una resolución mínima de 1080×1080 px que ilustren las funciones clave de su aplicación.
- Logo de la aplicación: Debe tener un tamaño de 512×512 px. Si utilizó App Icon Generator, este archivo ya estará generado.
- Banner: Diseñe un banner promocional de 1024×512 px. Puede crearlo fácilmente con herramientas como Canva.
Redactar las condiciones de uso (CGU)
Las Condiciones Generales de Uso (CGU) son esenciales para informar a los usuarios sobre las reglas y condiciones de uso de su aplicación. Puede generar un modelo básico para un MVP (Producto Mínimo Viable) con herramientas como ChatGPT. Incluya los siguientes puntos clave:
- Aviso legal: Información sobre el desarrollador o empresa responsable de la app.
- Descripción breve de la app: Propósito y objetivos principales de su aplicación.
- Recolección de datos: Explicación de qué datos se recopilan, por qué y cómo se almacenan.
- Alcance de las CGU: Detalles sobre cómo se aplican estas condiciones.
- Uso y contenido: Reglas sobre el uso de la aplicación y derechos sobre los contenidos ofrecidos.
- Propiedad intelectual: Derechos del desarrollador sobre la app y sus funcionalidades.
Crear una política de privacidad
La política de privacidad es obligatoria para explicar cómo se gestionan los datos de los usuarios. Puede crearla usando un formulario de Google que resuma las políticas y genere una URL que pueda incluir en la página de Google Play.
Es imprescindible tener una URL válida para la política de privacidad, ya que será solicitada al publicar su aplicación.
Permitir la eliminación de cuentas o datos personales
Según las directrices recientes de Google, su aplicación debe permitir a los usuarios eliminar su cuenta o datos personales directamente desde la app. Esta función es obligatoria para evitar el rechazo de su aplicación durante el proceso de revisión.
Si aún no lo ha implementado, puede proporcionar una solución alternativa, como un formulario de Google, para gestionar las solicitudes de eliminación de datos. Proporcione el enlace a este formulario al cargar su app en Google Play.
Firmar su aplicación Flutter para Android
Una vez definido el nombre del paquete, debe crear una clave de firma para garantizar la seguridad de su aplicación. Esta clave se almacena en un archivo .jks (Java Keystore) y contiene la información necesaria para firmar la aplicación.
Paso para crear la clave de firma
En su terminal, ejecute el siguiente comando para generar la clave:
keytool -genkey -v -keystore /ruta/a/mi-keystore.jks -keyalg RSA -keysize 2048 -validity 10000 -alias mi-alias
Deberá cambiar estos dos elementos:
- /ruta/a/mi-keystore.jks: Reemplace con la ruta donde desea guardar su archivo .jks. Ejemplo: /User/juan/desarrollo/mi-keystore.jks.
- mi-alias: Reemplace con un alias de su elección, como el nombre de su aplicación.
Información que se le pedirá
Al crear la clave, se le solicitará proporcionar cierta información, como:
- Nombre completo: Su nombre y apellido.
- Nombre de la organización o empresa: Puede dejarlo vacío si trabaja solo.
- Ciudad y región: Su localidad y región.
- Código del país (ISO): Por ejemplo, ES para España, o MX para México.
Finalmente, deberá crear una contraseña para proteger su clave. Asegúrese de usar una contraseña segura y de guardarla en un lugar seguro, ya que la necesitará para firmar la aplicación en cada actualización.
Importar la clave de firma en su aplicación Flutter
Una vez creado el archivo .jks, colóquelo en el directorio android/app de su proyecto Flutter. Luego, cree un archivo key.properties en la carpeta android para almacenar la información de acceso a la clave, con el siguiente formato:
storePassword=su_contraseña
keyPassword=su_contraseña
keyAlias=mi-alias
storeFile=../ruta/a/mi-keystore.jks
Modificar el archivo build.gradle
En el archivo android/app/build.gradle, debe añadir dos bloques para vincular su clave de firma a la aplicación:
- Agregue este bloque al principio del archivo, antes de la sección android {}:
def keystoreProperties = new Properties()
def keystorePropertiesFile = rootProject.file('key.properties')
if (keystorePropertiesFile.exists()) {
keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
}
2. Luego, en la sección android {}, justo después de defaultConfig {}, añada este bloque:
signingConfigs {
release {
keyAlias keystoreProperties['keyAlias']
keyPassword keystoreProperties['keyPassword']
storeFile keystoreProperties['storeFile'] ? file(keystoreProperties['storeFile']) : null
storePassword keystoreProperties['storePassword']
}
}
3. Finalmente, reemplace esta parte dentro del bloque buildTypes:
buildTypes {
release {
signingConfig signingConfigs.release
}
}
Esto permite firmar automáticamente su aplicación cuando genere una versión de producción (release).
Recuperar su SHA-1 y SHA-2 en modo release
Al publicar una aplicación Flutter en Play Store, ciertas funciones de Firebase y Google Play Services, como la autenticación de Google o el envío de notificaciones, requieren agregar las huellas SHA-1 y SHA-256 de su aplicación en modo release. Estas huellas sirven como una firma única que permite a Google verificar que las solicitudes provienen de su aplicación publicada y no de una aplicación modificada o no autorizada.
A continuación, se detallan los pasos para recuperar las huellas SHA-1 y SHA-256 en modo release. Solo podrá realizarlos después de haber creado su clave de firma.
- Localice su archivo keystore : Se trata del archivo .jks que creó para firmar su aplicación. Tome nota de su ruta completa, ya que la necesitará en el siguiente comando.
- Ejecute el comando keytool : Abra una terminal (o consola de comandos) y ejecute el siguiente comando reemplazando
<path_to_your_key_store_file>
y<key_alias>
por su información:
keytool -list -v -keystore <path_to_your_key_store_file> -alias <key_alias>
Debe reemplazar estos elementos con su propia información:
- <path_to_your_key_store_file>: La ruta completa a su archivo .jks o .keystore.
- <key_alias>: El alias de la clave que definió al crear el keystore.
Por ejemplo:
keytool -list -v -keystore ~/keystores/my-release-key.jks -alias my-key-alias
A continuación, simplemente ingrese la contraseña de su archivo keystore, recupere las huellas SHA y agréguelas en la consola de Firebase, en la sección dedicada a Android. Se generará un nuevo archivo google-services.json; descárguelo y reemplace el archivo antiguo ubicado en la carpeta /android/
de su aplicación con este nuevo archivo.
Crear su cuenta de desarrollador en Google Play Console
Antes de poder publicar una aplicación en Google Play Store, es necesario crear una cuenta de desarrollador de Google. Esta cuenta le permite administrar sus aplicaciones, seguir su desempeño e interactuar con los usuarios.
Pasos para crear una cuenta de desarrollador
Acceda a Google Play Console
- Vaya a Google Play Console e inicie sesión con su cuenta de Google.
- Seleccione la opción para crear una cuenta de desarrollador.
- Deberá pagar una tarifa única de inscripción (alrededor de 25 USD) para activar su cuenta de por vida.
Proporcione información sobre el desarrollador
- Complete la información requerida sobre usted o su empresa, incluyendo detalles de contacto y facturación.
- Acepte los términos de uso de Google Play.
Configure su página de desarrollador
Esta página será la vitrina de sus aplicaciones en Play Store. Permite a los usuarios descubrir sus productos y conocer más sobre usted.
Pasos para configurarla:
- Abra Play Console y vaya a Cuenta de desarrollador > Página del desarrollador.
- Complete o actualice la siguiente información:
- Ícono del desarrollador: Un archivo PNG de 32 bits con dimensiones de 512 x 512 píxeles.
- Imagen de encabezado: Un archivo JPG o PNG de 4,096 x 2,304 píxeles sin canal alfa.
- Texto promocional: Un texto de hasta 140 caracteres que resuma su marca o productos.
Información opcional (pero recomendada):
- Dirección del sitio web: URL del sitio oficial de su marca o empresa.
- Aplicación destacada: Elija una de sus aplicaciones para destacarla en su página de desarrollador.
Crear una aplicación en Google Play Console
Una vez que su cuenta de desarrollador esté activada, puede crear y administrar sus aplicaciones desde Google Play Console.
Pasos para crear una aplicación
- Acceda a la sección «Crear una aplicación»
- Abre Google Play Console y haz clic en Inicio, luego selecciona Crear una aplicación.
- Deberás completar algunas informaciones básicas:
- Nombre de la aplicación: El nombre visible para los usuarios en el Play Store.
- Idioma predeterminado: Elige el idioma principal de tu aplicación.
- Tipo de contenido: Indica si estás publicando una aplicación o un juego.
- Precio: Indica si la aplicación será gratuita o de pago. Atención: Una vez publicada como gratuita, no podrás hacerla de pago.
- Configurar la información obligatoria. Antes de poder probar o publicar la aplicación, deberás completar varias secciones obligatorias en el panel de control:
- Políticas de privacidad: Proporciona un enlace a una página que detalla las políticas de privacidad de tu aplicación. Esta página debe explicar cómo recolectas, almacenas y procesas los datos de los usuarios.
- Acceso a la aplicación: Indica a los equipos de Google Play cómo acceder a tu aplicación para probarla. Esto puede incluir instrucciones de inicio de sesión o una cuenta de prueba si es necesario.
- Anuncios publicitarios: Especifica si tu aplicación contiene anuncios publicitarios.
- Clasificación del contenido: Completa un breve cuestionario para definir la edad mínima requerida para usar tu aplicación. Esto ayuda a Google a categorizar tu aplicación y garantizar que sea adecuada para ciertos públicos.
- Público objetivo: Indica los rangos de edad a los que está destinada tu aplicación (por ejemplo, 13-15 años, 16-17 años, 18 años o más).
- Aplicaciones de noticias: Declara si tu aplicación es una aplicación de noticias (generalmente para periódicos, revistas, etc.).
- Seguridad de los datos: Declara si tu aplicación recopila datos de usuarios. Si tu aplicación requiere una cuenta de usuario, deberás especificar qué tipo de autenticación se utiliza e incluir un enlace a una página que permita eliminar la cuenta.
- Aplicaciones gubernamentales: Si tu aplicación ha sido desarrollada para una entidad pública, deberás declararlo aquí.
- Características financieras: Si tu aplicación ofrece servicios bancarios o transacciones financieras, deberás proporcionar información sobre estas características.
- Aplicaciones de salud: Si tu aplicación incluye servicios o funcionalidades relacionadas con la salud, indícalo aquí.
- Rellenar la categoría y la información de contacto
- Categoría: Selecciona la categoría más adecuada para tu aplicación (por ejemplo, Productividad, Entretenimiento, etc.).
- Información de contacto: Añade los datos de contacto (correo electrónico, sitio web, etc.) que serán visibles en la ficha de tu aplicación en Play Store. Esto permite a los usuarios contactarte si lo necesitan.
Generar el APK de tu aplicación Flutter
Ahora que tu clave de firma está configurada, puedes generar el APK de tu aplicación para luego importarlo en Play Console.
Asegurarse de tener el package name correcto
Antes de generar el APK de tu aplicación, verifica que el nombre del paquete (package name) sea correcto. Este nombre debe ser único y seguir la convención de nomenclatura de paquetes de Android. Se encuentra en el archivo android/app/build.gradle
.
Flutter genera por defecto un nombre de paquete en el formato com.example.tuapp
, que probablemente tendrás que modificar. Para cambiar el nombre del paquete, sigue estos pasos:
- Abre el archivo
android/app/build.gradle
. - Reemplaza el nombre con uno que cumpla con la estructura estándar, por ejemplo,
com.tuapp.app
ocom.nombredetuempresa.nombredelaaplicación
.
Generar un APK
Para generar el APK de tu aplicación Flutter, abre un terminal en Visual Studio Code y ejecuta el siguiente comando:
flutter build appbundle
Este comando generará un Android App Bundle (.aab), que es el formato de archivo recomendado para publicar en Google Play Store. Encontrarás el archivo generado en la siguiente ruta:
build/app/outputs/bundle/release/app-release.aab
Resolución de errores comunes
- Error: «Importa un app bundle válido»: Si aparece este mensaje, es porque Google Play requiere un App Bundle (.aab) en lugar de un APK. Asegúrate de usar el comando
flutter build appbundle
en lugar deflutter build apk
. - Error: «Has importado un APK o un Android App Bundle con una firma en modo depuración»: Esto significa que la aplicación no ha sido firmada en modo producción. Verifica que hayas configurado correctamente la clave de firma y que generes el APK en modo release.
Lanzar tu aplicación en prueba cerrada
Antes de publicar oficialmente una aplicación en Google Play Store, se recomienda realizar una fase de pruebas para detectar posibles errores y recopilar comentarios de usuarios reales. La prueba cerrada es una de las opciones más comunes para probar una aplicación con un grupo limitado de usuarios antes de su disponibilidad pública.
Tipos de pruebas disponibles en Google Play Console
Antes de lanzar una prueba cerrada, es importante entender los tres tipos de pruebas que ofrece Google Play Console, cada uno adaptado a diferentes fases del desarrollo:
- Prueba interna
- Objetivo: Una prueba para un pequeño grupo de probadores (hasta 100) para validar funciones específicas o actualizaciones rápidas.
- Acceso: Los probadores deben ser invitados por correo electrónico, y la aplicación no es accesible públicamente.
- Uso: Esta prueba es rápida de configurar y permite una validación inicial antes de un despliegue más amplio.
- Prueba cerrada:
- Objetivo: Ampliar las pruebas a un grupo específico de usuarios, generalmente más diverso, para obtener comentarios representativos.
- Acceso: Los usuarios deben ser invitados a través de un enlace específico o una lista de correos electrónicos.
- Uso: Perfecto para probar una versión más completa de tu aplicación con un grupo controlado.
- Prueba abierta:
- Objetivo: Hacer que la aplicación esté disponible para un público amplio en Play Store, mientras se indica que está en fase de prueba (beta).
- Acceso: Disponible para todos los usuarios de Play Store que deseen participar en la prueba.
- Uso: Ideal para probar la estabilidad antes del lanzamiento oficial.
Cómo configurar una prueba cerrada en Google Play Console
Paso 1: Acceder a la sección de prueba cerrada
Una vez que hayas creado tu aplicación en Google Play Console, ve al panel de control de tu aplicación.
En el menú lateral, selecciona «Pruebas y publicación», y luego haz clic en «Prueba cerrada».
Paso 2: Configurar la prueba cerrada
- Definir los países donde estará disponible la aplicación
Selecciona los países en los que deseas que la aplicación sea probada. Esto permite limitar la disponibilidad geográfica de la prueba. - Crear una lista de probadores
Puedes invitar a probadores mediante sus direcciones de correo electrónico o crear grupos de Google para gestionar más fácilmente tu audiencia de prueba. Estos probadores recibirán un enlace específico para descargar y probar la aplicación. - Crear una release
Una release es una versión específica de tu aplicación destinada a los probadores. Aquí están los pasos a seguir:- Generar una clave de firma: Permite que Google genere una clave de firma para proteger tu archivo APK o AAB, o importa tu propia clave si lo prefieres.
- Agregar las huellas SHA en Firebase: Si utilizas la clave generada por Google, obtén las huellas SHA-1 y SHA-256 desde la consola Google Play (en «Integridad de la aplicación») y añádelas a Firebase. Esto es esencial para que funcionen correctamente los servicios de Google, como Google Sign-In.
- Actualizar Firebase y el archivo de configuración
Después de añadir las huellas SHA en Firebase, descarga un nuevo archivogoogle-services.json
y reemplaza el anterior en tu proyecto Flutter. - Generar un nuevo APK
Compila un nuevo APK o AAB asegurándote de que utiliza la configuración actualizada. Podrás cargar este archivo en la consola Google Play para que los probadores tengan acceso.
Paso 3: Lanzar la prueba
Una vez que hayas completado todos estos pasos y la release esté lista, puedes lanzar la prueba cerrada. Los probadores recibirán una invitación o un enlace para acceder a la aplicación. Podrán descargarla, usarla y proporcionarte comentarios valiosos sobre su funcionamiento.
Pasar a la fase de publicación
Después de realizar los ajustes necesarios en base a los comentarios de los probadores, puedes optar por:
- Lanzar una prueba abierta para ampliar el grupo de probadores.
- Publicar directamente tu aplicación en producción en Google Play Store, haciéndola accesible para todos los usuarios.
Conclusión
Tu aplicación Flutter ya está disponible en Android. Pero ¿por qué no publicarla también en iOS para alcanzar a más usuarios? Te mostraré cómo hacerlo en mi próxima guía:
Publicar tu aplicación Flutter para iOS →