En este módulo, aprenderás cómo preparar tu aplicación Flutter para su lanzamiento en las tiendas de aplicaciones, tanto para iOS como para Android. Este proceso incluye la configuración de la aplicación, la optimización del rendimiento, la gestión de permisos y la creación de los archivos necesarios para la distribución.

  1. Configuración de la Aplicación

1.1. Configuración del Nombre y el Icono de la Aplicación

Cambiar el Nombre de la Aplicación

Para cambiar el nombre de la aplicación, debes modificar el archivo pubspec.yaml:

name: nombre_de_tu_app
description: Una nueva aplicación Flutter.

Cambiar el Icono de la Aplicación

Para cambiar el icono de la aplicación, puedes usar el paquete flutter_launcher_icons. Añade la dependencia en tu archivo pubspec.yaml:

dev_dependencies:
  flutter_launcher_icons: ^0.9.2

flutter_icons:
  android: true
  ios: true
  image_path: "assets/icon/icon.png"

Luego, ejecuta el siguiente comando en tu terminal:

flutter pub run flutter_launcher_icons:main

1.2. Configuración de Permisos

Permisos en Android

Para configurar los permisos en Android, edita el archivo AndroidManifest.xml ubicado en android/app/src/main/AndroidManifest.xml:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.tu_app">

    <uses-permission android:name="android.permission.INTERNET"/>
    <!-- Otros permisos necesarios -->

    <application
        android:label="tu_app"
        android:icon="@mipmap/ic_launcher">
        <activity
            android:name=".MainActivity"
            android:launchMode="singleTop"
            android:theme="@style/LaunchTheme"
            android:configChanges="orientation|keyboardHidden|keyboard|screenSize|smallestScreenSize|screenLayout|density|layoutDirection|fontScale|locale|uiMode|screenLayout|screenSize|smallestScreenSize"
            android:hardwareAccelerated="true"
            android:windowSoftInputMode="adjustResize">
            <meta-data
                android:name="io.flutter.embedding.android.NormalTheme"
                android:resource="@style/NormalTheme"
                />
            <intent-filter>
                <action android:name="android.intent.action.MAIN"/>
                <category android:name="android.intent.category.LAUNCHER"/>
            </intent-filter>
        </activity>
    </application>
</manifest>

Permisos en iOS

Para configurar los permisos en iOS, edita el archivo Info.plist ubicado en ios/Runner/Info.plist:

<key>NSAppTransportSecurity</key>
<dict>
    <key>NSAllowsArbitraryLoads</key>
    <true/>
</dict>
<key>NSCameraUsageDescription</key>
<string>Necesitamos acceso a la cámara para...</string>
<!-- Otros permisos necesarios -->

  1. Optimización del Rendimiento

2.1. Minificación y Obfuscación

Para reducir el tamaño de tu aplicación y proteger tu código, puedes habilitar la minificación y la ofuscación.

Android

Edita el archivo build.gradle ubicado en android/app/build.gradle:

buildTypes {
    release {
        // Habilitar la minificación y la ofuscación
        minifyEnabled true
        shrinkResources true
        proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
    }
}

iOS

Para iOS, la minificación y la ofuscación no son necesarias ya que el código Swift/Objective-C no se distribuye en forma legible.

2.2. Reducción del Tamaño de la Aplicación

Para reducir el tamaño de tu aplicación, puedes eliminar recursos no utilizados y habilitar la compresión de imágenes.

Eliminación de Recursos No Utilizados

Usa el comando flutter build apk --split-per-abi para generar APKs específicos para cada arquitectura, reduciendo el tamaño del archivo:

flutter build apk --split-per-abi

Compresión de Imágenes

Usa herramientas como pngcrush o optipng para comprimir las imágenes en tu aplicación.

  1. Creación de Archivos de Distribución

3.1. Generar el APK para Android

Para generar el APK de tu aplicación, usa el siguiente comando:

flutter build apk --release

El archivo APK se generará en build/app/outputs/flutter-apk/app-release.apk.

3.2. Generar el IPA para iOS

Para generar el archivo IPA para iOS, sigue estos pasos:

  1. Abre el proyecto en Xcode (ios/Runner.xcworkspace).
  2. Selecciona el destino de tu dispositivo o simulador.
  3. Ve a Product > Archive.
  4. Una vez completado el proceso de archivado, selecciona Distribute App.

  1. Publicación en las Tiendas de Aplicaciones

4.1. Publicación en Google Play Store

  1. Crea una cuenta de desarrollador en Google Play Console.
  2. Sube el archivo APK generado.
  3. Completa la información de la aplicación (descripción, capturas de pantalla, etc.).
  4. Configura la política de privacidad y los permisos.
  5. Envía la aplicación para revisión.

4.2. Publicación en Apple App Store

  1. Crea una cuenta de desarrollador en Apple Developer.
  2. Sube el archivo IPA generado usando App Store Connect.
  3. Completa la información de la aplicación (descripción, capturas de pantalla, etc.).
  4. Configura la política de privacidad y los permisos.
  5. Envía la aplicación para revisión.

Conclusión

En esta sección, has aprendido cómo preparar tu aplicación Flutter para su lanzamiento en las tiendas de aplicaciones. Esto incluye la configuración del nombre y el icono de la aplicación, la gestión de permisos, la optimización del rendimiento y la creación de los archivos necesarios para la distribución. Además, has visto cómo publicar tu aplicación en Google Play Store y Apple App Store. Con estos conocimientos, estarás listo para llevar tu aplicación al siguiente nivel y compartirla con el mundo.

En el próximo módulo, aprenderás cómo construir tu aplicación para iOS y Android, asegurándote de que funcione perfectamente en ambas plataformas.

Curso de Desarrollo con Flutter

Módulo 1: Introducción a Flutter

Módulo 2: Conceptos Básicos de Programación en Dart

Módulo 3: Widgets en Flutter

Módulo 4: Gestión de Estado

Módulo 5: Navegación y Enrutamiento

Módulo 6: Redes y APIs

Módulo 7: Persistencia y Almacenamiento

Módulo 8: Conceptos Avanzados de Flutter

Módulo 9: Pruebas y Depuración

Módulo 10: Despliegue y Mantenimiento

Módulo 11: Flutter para Web y Escritorio

© Copyright 2024. Todos los derechos reservados