Check out what’s new from Firebase@ Google I/O 2021, and join our alpha program for early access to the new Remote Config personalization feature. Learn more

Distribuer des applications Android aux testeurs à l'aide de Gradle

Vous pouvez intégrer App Distribution dans votre processus de construction Android à l'aide du plug-in App Distribution Gradle. Le plugin vous permet de spécifier vos testeurs et les notes de version dans le fichier build.gradle votre application, vous permettant de configurer les distributions pour différents types de build et variantes de votre application.

Ce guide décrit comment distribuer des APK aux testeurs à l'aide du plug-in App Distribution Gradle.

Avant que tu commences

Si vous ne l'avez pas déjà fait, ajoutez Firebase à votre projet Android .

Si vous n'utilisez aucun autre produit Firebase, il vous suffit de créer un projet et d'enregistrer votre application. Cependant, si vous décidez d'utiliser des produits supplémentaires à l'avenir, assurez-vous de suivre toutes les étapes de la page liée ci-dessus.

Étape 1. Configurez votre projet Android

  1. Dans votre fichier Gradle au niveau du projet (généralement android/build.gradle ), ajoutez le plugin App Distribution en tant que dépendance 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.1.2'
        }
    }
    
  2. Dans votre fichier Gradle au niveau de l'application (généralement android/app/build.gradle ), incluez le plug-in App Distribution sous le plug-in Android :

    apply plugin: 'com.android.application'
    // ...
    
    // Apply the App Distribution Gradle plugin
    apply plugin: 'com.google.firebase.appdistribution'
    // ...
    
  3. Si vous êtes derrière un proxy ou un pare-feu d'entreprise, ajoutez la propriété système Java suivante qui permet à App Distribution de télécharger vos distributions sur Firebase :

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

Étape 2. Authentifiez-vous avec Firebase

Avant de pouvoir utiliser le plug-in Gradle, vous devez d'abord vous authentifier auprès de votre projet Firebase. Il y a trois façons d'y parvenir :

Étape 3. Configurez vos propriétés de distribution

Dans votre fichier app/build.gradle , configurez App Distribution en ajoutant au moins une section firebaseAppDistribution . Par exemple, pour distribuer la release finale aux testeurs :

```
android {

    // ...

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

    // ...
}
```

App Distribution peut être configuré pour les types de build et les saveurs de produits . Par exemple, pour distribuer des versions de debug et de release dans les versions de produit « demo » et « complètes :

```
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"
          }
      }
    }

    // ...
}
```

Utilisez les paramètres suivants pour configurer la distribution :

Paramètres de génération de distribution d'applications
appId

L'ID d'application Firebase de votre application. Obligatoire uniquement si vous n'avez pas installé le plug-in Google Services Gradle. Vous pouvez trouver l'ID de l'application dans le fichier google-services.json ou dans la console Firebase sur la page Paramètres généraux . La valeur dans votre fichier build.gradle remplace la valeur sortie du plug google-services in google-services .

appId="1:1234567890:android:321abc456def7890"
serviceCredentialsFile

Chemin d'accès au fichier JSON de la clé privée de votre compte de service. Obligatoire uniquement si vous utilisez l'authentification du compte de service.

artifactType

Spécifie le type de fichier de votre application. Peut être réglé sur "AAB" ou "APK" .

apkPath

Ce paramètre est désormais obsolète. Utilisez l' artifactPath place.

artifactPath

Chemin absolu vers le fichier APK ou AAB que vous souhaitez télécharger.

releaseNotes ou releaseNotesFile

Notes de version pour cette version.

Vous pouvez soit spécifier les notes de version directement, soit le chemin d'accès à un fichier texte brut.

testers ou testersFile

Les adresses e-mail des testeurs auxquels vous souhaitez distribuer les builds.

Vous pouvez spécifier les testeurs sous la forme d'une liste d'adresses e-mail séparées par des virgules :

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

Ou, vous pouvez spécifier le chemin d'accès à un fichier contenant une liste d'adresses e-mail séparées par des virgules :

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

Les groupes de testeurs auxquels vous souhaitez distribuer les builds (voir Gérer les testeurs ). Les groupes sont spécifiés à l'aide de alias de groupe , que vous pouvez trouver dans l'onglet Testeurs de la console Firebase App Distribution.

Vous pouvez spécifier les groupes sous la forme d'une liste d'alias de groupe séparés par des virgules :

groups="qa-team, android-testers"

Ou, vous pouvez spécifier le chemin d'accès à un fichier contenant une liste d'alias de groupe séparés par des virgules :

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

Imprime la trace de pile pour les exceptions utilisateur. Ceci est utile lors du débogage des problèmes.

Étape 4. Distribuez votre application aux testeurs

Enfin, pour empaqueter votre application de test et inviter des testeurs, appDistributionUpload BUILD-VARIANT les cibles assemble BUILD-VARIANT et appDistributionUpload BUILD-VARIANT avec le wrapper Gradle de votre projet, où BUILD-VARIANT est la saveur facultative du produit et le type de build que vous avez configurés à l'étape précédente. Pour plus d'informations sur les variantes de produits, consultez Configurer les variantes de build .

Par exemple, pour distribuer votre application à l'aide de la variante de release version, exécutez la commande suivante :

./gradlew assembleRelease appDistributionUploadRelease

Ou, si vous vous êtes authentifié avec votre compte Google et n'avez pas fourni d'informations d'identification dans votre fichier de construction Gradle, incluez la variable FIREBASE_TOKEN :

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

Une fois que vous distribuez votre build, il devient disponible dans le tableau de bord App Distribution de la console Firebase pendant 150 jours (cinq mois). Lorsque la version expire dans 30 jours, un avis d'expiration apparaît à la fois dans la console et dans la liste des versions de votre testeur sur son appareil de test.

Les testeurs qui n'ont pas été invités à tester l'application reçoivent des invitations par e-mail pour commencer, et les testeurs existants reçoivent des notifications par e-mail indiquant qu'une nouvelle version est prête à tester (lisez le guide de configuration du testeur pour savoir comment installer l'application de test). Vous pouvez surveiller l'état de chaque testeur, s'il a accepté l'invitation et s'il a téléchargé l'application dans la console Firebase.