将 app bundle 版本分发给测试人员 - Codelab

一、概述

image10.png

在此 Codelab 中,您将学习如何使用 Firebase App Distribution 及其 Gradle 插件向测试人员分发 Android App Bundle 版本。 App Distribution 为您提供了一个中央枢纽来管理您的应用程序的预发布版本和您邀请到每个版本的测试人员。

你会学到什么

  • 如何将您的 Firebase 应用关联到 Google Play
  • 如何将您的应用程序打包并构建为应用程序包
  • 如何创建版本并与实时测试人员共享
  • 作为测试人员如何下载和测试新版本

你需要什么

  • 最新的Android Studio版本
  • 您从 Android Studio 生成的签名捆绑包文件
  • 您是所有者或管理员的 Google Play 开发者帐户
  • 您在 Google Play 中的应用程序是在 Google Play 应用程序面板上设置的,它具有以下状态
    • 该应用程序分发到 Google Play 轨道之一(内部测试、封闭测试、开放测试或生产)。
    • 应用在 Google Play 中的审核已完成,应用已发布。如果应用程序状态列显示以下状态之一,则您的应用程序已发布:内部测试(不是草稿内部测试)、封闭式测试、开放式测试或生产。
  • 您可以用作测试人员的电子邮件地址,用于接收来自 Firebase 的新构建邀请

2.创建一个Firebase项目

  1. 登录到Firebase
  2. 在 Firebase 控制台中,点击添加项目,然后将您的项目命名为“AppBundlesCodelab”。记住您的 Firebase 项目的项目 ID。如果您不编辑项目 ID,Firebase 会自动为您的项目分配一个唯一 ID。

    图片8.png
  3. (可选)出现提示时,启用 Google Analytics。
  4. 完成剩余的步骤,然后单击创建项目

将您的应用程序包添加到项目中

  1. 在 Firebase 控制台中,单击添加应用程序

    图片5.png
  2. 注册您的应用程序时,请确保使用与上传到您的 Google Play 开发者帐户的应用程序相同的程序包名称最后,点击Register app
  3. 完成其余步骤,将您应用的 Firebase 配置文件 ( google-services.json ) 添加到您的应用中。请注意,对于 Android,App Distribution 没有可添加到您的应用程序的 Firebase SDK。
  4. 单击继续控制台
  1. 在 Firebase 控制台中,转到您的项目设置

    图片2.png
  2. 集成选项卡中,单击Google Play卡片上的链接
  3. 按照屏幕上的说明启用 App Distribution 集成,然后选择您新创建的 Firebase 应用程序以链接到 Google Play。

现在您已经完成了这些步骤,只要应用程序包名称匹配,您的 Firebase 应用程序就会链接到您的 Google Play 开发者帐户中的应用程序。

3. 将 App Distribution 添加到您的项目

添加 App Distribution Gradle 插件

现在,您将使用 Android Studio 将 App Distribution 及其 Gradle 插件添加到您的应用中。

  1. 在您的项目级 Gradle 文件 ( android/build.gradle.kts ) 中,将 App Distribution Gradle 插件添加到plugins块。
    plugins {
         //...
    
         // Add the App Distribution Gradle plugin
         id("com.google.firebase.appdistribution") version "4.0.0" apply false
    }
    
  2. 在您的项目级设置 Gradle 文件 ( android/settings.gradle.kts ) 中,将 Google 的 Maven 存储库添加到pluginManagement块。
     pluginManagement {
         // Check that you have Google's Maven repository (if not, add it).
         repositories {
             google()
             mavenCentral()
         }
     }
    
  3. 在您的应用级 Gradle 文件 ( android/app/build.gradle.kts ) 中,将 App Distribution 插件添加到plugins块。
    plugins {
         //...
    
         // Add the App Distribution plugin
         id("com.google.firebase.appdistribution")
    }
    
  4. 如果您在公司代理或防火墙后面,请添加以下 Java 系统属性,使 App Distribution 能够将您的分发上传到 Firebase:
    -Djavax.net.ssl.trustStore=/path/to/truststore -Djavax.net.ssl.trustStorePassword=password
    

验证您的 Firebase 项目

在使用 Gradle 插件之前,您需要验证您的 Firebase 项目。对于此 Codelab,您将使用插件的登录操作登录您的 Google 帐户。

  1. 在 Android 项目的根目录下运行以下命令:
    ~/your-android-project$ ./gradlew appDistributionLogin
    
  2. 当命令打印身份验证链接时,在浏览器中将其打开。出现提示时,登录您的 Google 帐户并授予访问您的 Firebase 项目的权限。 Gradle 命令打印一个刷新令牌,App Distribution 插件使用该令牌向 Firebase 进行身份验证。
  3. 将环境变量FIREBASE_TOKEN设置为上一步中的令牌:
    ~/your-android-project$ export FIREBASE_TOKEN=your_firebase_token
    

4. 在 Android Studio 中配置你的 bundle 属性

在此步骤中,您将自己添加为稍后将分发的构建的测试员。分发构建后,测试人员会收到来自 Firebase 的电子邮件通知,邀请他们测试新构建。

在您的app/build.gradle.kts中,添加一个firebaseAppDistribution部分并包含以下参数:

  • appID :您应用的 Firebase 应用 ID。您可以在项目设置常规选项卡中找到它。
  • artifactType :您应用的文件类型 ( AAB )。
  • testers :您的测试人员的电子邮件地址。对于此 Codelab,请添加您自己的电子邮件,以便您可以在构建分发后对其进行测试。

例如:

    android {

       // ...

       buildTypes {
            getByName("release") {
                firebaseAppDistribution {
                  appId = "yourAppId"
                  artifactType = "AAB"
                  testers = "ali@example.com, bri@example.com, cal@example.com"
                }
            }
        }

        // ...
    }

作为一个选项,您还可以通过以-PappDistribution- property-name = property-value的形式传递命令行参数来覆盖在build.gradle.kts中设置的值。

5. 构建和分发版本

  1. 运行bundle Variant Gradle 任务来构建您的应用程序包文件:
    $ ./gradlew :base:bundleRelease
    
  2. 在应用程序的构建目录中找到包(默认位置是app/build/outputs/bundle/release )。
  3. 要分发版本,请使用项目的 Gradle 包装器构建目标bundleReleaseappDistributionUploadRelease 。包括 Firebase 令牌(您在第 3 步中收到的令牌:将 App Distribution 添加到您的应用程序)。
    export FIREBASE_TOKEN=your_firebase_token
    
    ./gradlew --stop // Only needed for environment variable changes
    
    ./gradlew bundleRelease appDistributionUploadRelease
    

测试人员现在将收到下载和测试构建的电子邮件邀请。作为开发人员,您现在可以在 App Distribution 仪表板的Releases选项卡中监控构建。

6. 下载并测试您的版本

在本节中,您将被设置为测试人员,以便下载您分发的版本。作为测试人员,您需要验证您的测试设备并在 Google Play 商店应用中启用内部应用共享。

  1. 在您的测试设备上,登录到您的测试人员电子邮件帐户并打开来自 Firebase 的邀请。

    image6.png
  2. 使用您的 Google 帐户登录并接受测试分布式版本的邀请。作为一个选项,您还可以下载Firebase App Tester ,它可以防止下载的版本被添加到您设备的Downloads文件夹中。它还会显示有关发布的其他信息,例如下载进度和发布版本。

    image9.png
  3. 点击版本上的下载以从 Play 商店安装它。
  4. 出现提示时,完成剩余步骤以启用内部应用程序共享(说明显示在您的测试设备上,只需完成一次)。

下载完成后,您的版本将自动显示为设备主屏幕中的快捷方式。

7. 恭喜!

您刚刚使用 Firebase App Distribution 上传了一个应用程序包并向测试人员分发了一个版本。

下一步