Distribuye apps para iOS a los verificadores con fastlane

Puedes distribuir compilaciones a los verificadores con fastlane, una plataforma de código abierto que automatiza la compilación y el lanzamiento de apps para iOS y Android. Sigue las instrucciones simples que se definen en un Fastfile. Después de configurar fastlane y tu Fastfile, puedes integrar App Distribution a tu configuración de fastlane.

Paso 1: Configura fastlane

  1. Instala y configura fastlane.

  2. Para agregar App Distribution a tu configuración de fastlane, ejecuta el siguiente comando desde la raíz de tu proyecto de iOS:

    fastlane add_plugin firebase_app_distribution

    Si el comando te muestra una opción, selecciona Option 3: RubyGems.org.

Paso 2: Autentica con Firebase

Antes de que puedas usar el complemento de fastlane, primero debes realizar la autenticación con tu proyecto de Firebase. Puedes hacerlo de las siguientes tres maneras:

Paso 3: Configura el archivo Fastfile y distribuye tu app

  1. En un carril ./fastlane/Fastfile, agrega un bloque firebase_app_distribution. Usa los siguientes parámetros para configurar la distribución:
    Parámetros de firebase_app_distribution
    app

    Obligatorio solo si la app no contiene un archivo de configuración de Firebase (GoogleService-Info.plist): El ID de app de Firebase de tu aplicación. Puedes encontrar el ID de la app en la página Configuración general de Firebase console.

    
    app: "1:1234567890:ios:0a1b2c3d4e5f67890"
    googleservice_info_plist_path

    La ruta a tu archivo GoogleService-Info.plist, en relación con la ruta del producto archivado. Se configura de forma predeterminada en GoogleService-Info.plist.

    El archivo se usa para obtener el ID de app de Firebase de tu aplicación si no se especifica el parámetro app.

    firebase_cli_token

    Un token de actualización que se imprime cuando ejecutas la acción de acceso del complemento (consulta cómo autenticar con una Cuenta de Google más arriba) o cuando autenticas tu entorno de CI con Firebase CLI (consulta Usa la CLI con sistemas de CI para obtener más información).

    service_credentials_file

    La ruta al archivo JSON de tu cuenta de servicio de Google. Consulta la sección anterior sobre cómo autenticar con credenciales de cuenta de servicio.

    ipa_path

    Ruta absoluta al archivo IPA que deseas subir. Si no se especifica, fastlane determina la ubicación del archivo desde el carril en el que se generó el archivo.

    release_notes
    release_notes_file

    Las notas de la versión de esta compilación

    Puedes especificar las notas de la versión directamente, como sigue:

    
    release_notes: "Text of release notes"

    O bien, especificar la ruta de acceso a un archivo de texto sin formato:

    
    release_notes_file: "/path/to/release-notes.txt"
    testers
    testers_file

    Las direcciones de correo electrónico de los verificadores que quieres invitar.

    Puedes especificar los verificadores como una lista de direcciones de correo electrónico separada por comas, como sigue:

    
    testers: "ali@example.com, bri@example.com, cal@example.com"

    O bien, puedes especificar la ruta de acceso a un archivo de texto sin formato que contenga una lista de direcciones de correo electrónico separada por comas, de la siguiente manera:

    
    testers_file: "/path/to/testers.txt"
    groups
    groups_file

    Los grupos de verificadores que deseas invitar (consulta Administra verificadores). Los grupos se especifican con alias de grupos, que puedes consultar en Firebase console.

    Puedes especificar los grupos como una lista separada por comas, como sigue:

    
    groups: "qa-team, trusted-testers"

    O bien, puedes especificar la ruta de acceso a un archivo de texto sin formato que contenga una lista de nombres de grupo separada por comas, de la siguiente manera:

    
    groups_file: "/path/to/groups.txt"
    debug

    Una marca booleana. Puedes configurarla como true para imprimir la salida de depuración detallada.

    Por ejemplo:
    platform :ios do
        desc "My awesome app"
        lane :distribute do
            build_ios_app(...) # build_ios_app is a built-in fastlane action.
    
            firebase_app_distribution(
                app: "1:123456789:ios:abcd1234",
                testers: "tester1@company.com, tester2@company.com",
                release_notes: "Lots of amazing new features to test out!"
            )
    
        end
    end
    
  2. Por último, a fin de hacer que la compilación esté disponible para los verificadores, ejecuta tu carril de la siguiente manera:
    fastlane <lane>

Una vez que distribuyas la compilación, estará disponible en el panel de App Distribution de Firebase console durante 150 días (cinco meses). Cuando falten 30 días para el vencimiento de la compilación, se mostrará un aviso de vencimiento en la consola y en la lista de compilaciones de tu verificador, en el dispositivo de prueba.

Los verificadores que no recibieron invitaciones para probar la app las recibirán por correo electrónico para comenzar, y los verificadores existentes recibirán notificaciones por correo electrónico en las que se indicará que hay una nueva compilación lista para probar (consulta la guía de preparación para verificadores si necesitas instrucciones para instalar la app de prueba). En Firebase console, puedes supervisar el estado de cada verificador (si aceptó la invitación y si descargó la app).