📌  相关文章
📜  如何使用 GitHub Actions 将 Android APK 上传到 Firebase 中的测试人员组?(1)

📅  最后修改于: 2023-12-03 15:23:51.622000             🧑  作者: Mango

如何使用 GitHub Actions 将 Android APK 上传到 Firebase 中的测试人员组?

在软件开发中,自动化测试和持续集成是非常重要的一环。GitHub Actions 是 GitHub 官方提供的持续集成和持续部署解决方案之一,可以方便我们将代码提交到开发主干后进行自动化构建、自动化测试、自动化部署等操作。

Firebase 是 Google 提供的一组用于移动应用开发的解决方案,包括实时数据库、云存储、身份验证、消息推送等功能。在我们开发移动应用时,可以使用 Firebase 来进行测试和发布。

这篇教程将介绍如何使用 GitHub Actions 将 Android APK 上传到 Firebase 中的测试人员组。

准备工作
  • 在 Firebase 控制台中创建一个项目。
  • 配置测试人员组。在 Firebase 控制台中,选择“测试实验室”,然后选择“测试者”标签页,创建一个测试人员组并添加测试者。
  • 获取 Firebase 项目的配置文件 google-services.json,并将其放置在项目的根目录下。
编写 GitHub Actions

在项目的根目录下创建 .github/workflows 目录,并在该目录下创建一个名为 firebase.yml 的 YAML 文件。在该文件中编写以下代码,完成自动构建和自动上传操作:

name: Firebase Upload

on:
  push:
    branches:
      - main

jobs:
  build:
    runs-on: ubuntu-latest

    steps:
      - name: Checkout code
        uses: actions/checkout@v2

      - name: Set up JDK 1.8
        uses: actions/setup-java@v1
        with:
          java-version: 1.8

      - name: Build with Gradle
        run: |
          chmod +x ./gradlew
          ./gradlew assembleDebug

      - name: Upload to Firebase
        uses: wzieba/Firebase-Upload-Github-Action@v2.2
        with:
          app-id: ${{ secrets.FIREBASE_APP_ID }}
          token: ${{ secrets.FIREBASE_TOKEN }}
          apk-path: app/build/outputs/apk/debug/sample-app-debug.apk
          firebase-project: ${{ secrets.FIREBASE_PROJECT_NAME }}
          release-notes: 'Build from ${{ github.sha }}'
          release-notes-file: ''

代码解析:

  • name:定义 Action 的名称。
  • on:定义触发 Action 的条件,这里设置为在代码提交到 main 分支时触发。
  • jobs:定义一个 job,这里只定义了一个 build job。
  • runs-on:指定 job 的运行环境,这里选用 Ubuntu 系统。
  • steps:定义一个或多个步骤,依次执行。

步骤解析:

  • Checkout code:使用 GitHub 的 Checkout action 将代码仓库克隆到 Github action 容器中。
  • Set up JDK 1.8:安装 JAVA 环境。
  • Build with Gradle:使用 Gradle 编译项目,生成 APK 文件。
  • Upload to Firebase:使用 Firebase-Upload-Github-Action action 上传 APK 文件到 Firebase。

在 Firebase 控制台中,进入“项目设置”页面,依次选择“服务帐号”和“新建服务帐号”,为 Firebase 创建一个服务帐号。然后在该页面中生成一个密钥,并将密钥内容复制到 GitHub 仓库的 Secrets 中。具体步骤请参考 Firebase 文档 服务帐号

在 GitHub 仓库的 Settings 页面中,进入“Secrets”标签页,然后添加以下三个 Secrets:

  • FIREBASE_APP_ID:Firebase 项目的应用 ID。
  • FIREBASE_TOKEN:Firebase 项目的访问令牌。使用服务帐号生成的密钥。
  • FIREBASE_PROJECT_NAME:Firebase 项目的名称。
测试

将代码提交到 GitHub 仓库即可触发 Action 的运行。可以在 GitHub Actions 页面中查看 job 的运行状态和输出日志。

在 Firebase 控制台中,进入“测试实验室”页面,选择“测试者”标签页,即可查看已上传的 APK 文件。选择已上传的 APK 文件,可以查看该文件的版本号、发布日期、下载链接、变更日志等信息。

总结

本文介绍了如何使用 GitHub Actions 和 Firebase 完成自动化构建和自动化部署。通过将 APK 文件上传到 Firebase 中的测试人员组,我们可以方便地进行移动应用测试,并及时处理测试反馈。希望本文对大家有所帮助。