Distribuye apps para Android a los verificadores con Gradle

Puedes integrar App Distribution en tu proceso de compilación de Android con el complemento de App Distribution para Gradle. El complemento te permite especificar los verificadores y las notas de la versión en el archivo build.gradle de tu app, lo que te permite configurar distribuciones para diferentes tipos y variantes de compilación de tu app.

Antes de comenzar

Si aún no lo has hecho, agrega Firebase a tu proyecto de Android.

Si no utilizas ningún otro producto de Firebase, solo tienes que crear un proyecto y registrar tu app. Sin embargo, si decides usar productos adicionales en el futuro, asegúrate de completar todos los pasos en la página vinculada anteriormente.

Paso 1. Configura tu proyecto de Android

  1. En el archivo Gradle (generalmente android/build.gradle) del proyecto, agrega el complemento de App Distribution como dependencia de buildscript:

    buildscript {
        repositories {
            // Check that you have Google's Maven repository (if not, add it).
            google()
            jcenter()
        }
        dependencies {
            // Add the App Distribution Gradle plugin
            classpath 'com.google.firebase:firebase-appdistribution-gradle:2.0.1'
        }
    }
    
  2. En el archivo Gradle (generalmente android/app/build.gradle) de la app, incluye el complemento de App Distribution debajo del complemento para Android:

    apply plugin: 'com.android.application'
    // ...
    
    // Apply the App Distribution Gradle plugin
    apply plugin: 'com.google.firebase.appdistribution'
    // ...
    
  3. Si estás detrás de un proxy o firewall empresarial, agrega la siguiente propiedad del sistema de Java que permite que App Distribution suba tus distribuciones a Firebase:

    -Djavax.net.ssl.trustStore=/path/to/truststore -Djavax.net.ssl.trustStorePassword=password
    

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 las propiedades de distribución

  1. En el archivo app/build.gradle, configura App Distribution. Para ello, agrega al menos una sección firebaseAppDistribution. Puedes configurar App Distribution para tipos de compilación y atributos de productos. Por ejemplo, para distribuir la compilación release a los verificadores, realiza lo siguiente:

    android {
    
        // ...
    
        buildTypes {
            release {
                firebaseAppDistribution {
                    releaseNotesFile="/path/to/releasenotes.txt"
                    testers="ali@example.com, bri@example.com, cal@example.com"
                }
            }
        }
    
        // ...
    }
    

    Y para distribuir las compilaciones debug y release en variantes de producto “demostración“ y “completos”, haz lo siguiente:

    android {
    
        // ...
    
        buildTypes {
            debug {...}
            release {...}
        }
    
        flavorDimensions "version"
        productFlavors {
          demo {
              dimension "version"
              firebaseAppDistribution {
                  releaseNotes="Release notes for demo version"
                  testers="demo@testers.com"
              }
          }
          full {
              dimension "version"
              firebaseAppDistribution {
                  releaseNotes="Release notes for full version"
                  testers="full@testers.com"
              }
          }
        }
    
        // ...
    }
    

Usa los siguientes parámetros para configurar App Distribution:

Parámetros de compilación de App Distribution
appId

El ID de app de Firebase de la app. Solo es obligatorio si no tienes instalado el complemento de Gradle de los Servicios de Google. Puedes encontrar el ID de la app en el archivo google-services.json o en Firebase console en la página Configuración general. El valor de tu archivo build.gradle anula el resultado del valor del complemento google-services.

serviceCredentialsFile

La ruta de acceso al archivo JSON de la clave privada de tu cuenta de servicio. Solo es obligatoria si usas la autenticación de cuentas de servicio.

apkPath

Ruta de acceso absoluta o relativa al archivo APK que quieres subir. Si no se especifica, Gradle determina la ubicación del archivo mediante el directorio de salida del APK.

releaseNotes o releaseNotesFile

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

Puedes especificar las notas de la versión directamente o la ruta a un archivo de texto sin formato.

testers o testersFile

Las direcciones de correo electrónico de los verificadores a los que quieres distribuir las compilaciones.

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


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

O bien, puedes especificar la ruta de acceso a un archivo que contenga una lista separada por comas de direcciones de correo electrónico.


testersFile="/path/to/testers.txt"
groups o groupsFile

Los grupos de verificadores a los que quieres distribuir las compilaciones (consulta Administra verificadores). Los grupos se especifican con alias de grupos, que puedes encontrar en la pestaña Verificadores en la consola de Firebase App Distribution.

Puedes especificar los grupos como una lista separada por comas de alias de grupos:


groups="qa-team, android-testers"

O bien, puedes especificar la ruta de acceso a un archivo que contenga una lista separada por comas de alias de grupos.


groupsFile="/path/to/tester-groups.txt"
stacktrace

Imprime el seguimiento de pila para las excepciones de usuario. Esto es útil para depurar problemas.

Paso 4. Distribuye la app a los verificadores

Por último, para empaquetar la app de prueba e invitar a los verificadores, compila los destinos assembleBUILD-VARIANT y appDistributionUploadBUILD-VARIANT con el wrapper de Gradle de tu proyecto, en el que BUILD-VARIANT es la variante de producto opcional y el tipo de compilación que configuraste en el paso anterior.

Por ejemplo, para distribuir tu app con la variante de compilación release, ejecuta el siguiente comando:

./gradlew assembleRelease appDistributionUploadRelease

O, si realizaste la autenticación con tu Cuenta de Google y no proporcionaste credenciales en el archivo de compilación Gradle, incluye la variable FIREBASE_TOKEN:

export FIREBASE_TOKEN=1/a1b2c3d4e5f67890
./gradlew --stop // Only needed for environment variable changes
./gradlew assembleRelease appDistributionUploadRelease

Los verificadores que no recibieron invitaciones para probar la app las recibirán por correo electrónico para comenzar (consulta la guía de configuración de verificadores a fin de obtener instrucciones para instalar la app). Los verificadores existentes recibirán notificaciones por correo electrónico en las que se indica que hay una compilación nueva lista para probarse.

Para obtener más información sobre las variantes de producto, consulta Configura variantes de compilación.