使用 GitHub Actions 编译和发布 Android APK
在现代软件开发中,持续集成和持续部署(CI/CD)已成为不可或缺的一部分。对于 Android 开发者来说,自动化编译和发布 APK 不仅节省时间,还能确保每次发布的一致性。本文将介绍如何使用 GitHub Actions 自动化编译和发布 APK。
前言
本文将指导你如何通过 GitHub Actions 编译你的 Android 项目并自动发布 APK。当你向仓库推送一个新标签时,GitHub Actions 将触发构建过程,并将生成的 APK 附加到同一个标签的发布中。
准备工作
创建 GitHub Actions 配置文件
在你的 Android 项目的根目录下创建一个 .github/workflows/android.yml
文件,并将以下内容粘贴到文件中:
name: Build & Publish Release APKon:push:tags:- '*'jobs:Gradle:runs-on: ubuntu-lateststeps:- name: checkout codeuses: actions/checkout@v2- name: setup jdkuses: actions/setup-java@v1with:java-version: 11- name: Make Gradle executablerun: chmod +x ./gradlew- name: Build Release APKrun: ./gradlew assembleRelease- name: Releasing using Hubuses: sangatdesai/release-apk@mainenv:GITHUB_TOKEN: ${{ secrets.TOKEN }}APP_FOLDER: app
配置 Secrets
你需要在 GitHub 仓库的设置中配置一个 secret token,以便将生成的 APK 发布到你的仓库,并附加到创建的标签上。按照以下步骤创建一个新的访问 token:
- 进入 GitHub 仓库的
Settings > Secrets
。 - 创建一个新的 secret,命名为
TOKEN
,并将你的访问 token 粘贴进去。
配置环境变量
在上述 YAML 文件中,APP_FOLDER
环境变量指定了搜索 APK 的主文件夹。大多数情况下,这个文件夹是 app
。
推送标签
在本地仓库中,按照以下命令推送一个新的标签以触发 GitHub Actions:
git add .
git commit -m "new release"
git push
git tag 1.0
git push origin 1.0
定制 APK 构建口味
默认情况下,此配置文件将创建 release
口味的 APK。如果你想要构建 debug
口味的 APK,可以修改 YAML 文件中的相应命令:
- name: Build Debug APKrun: ./gradlew assembleDebug
详细步骤解析
1. Checkout 代码
- name: checkout codeuses: actions/checkout@v2
这一步将你的代码从 GitHub 仓库中检出,以便在虚拟机上进行构建。
2. 设置 JDK
- name: setup jdkuses: actions/setup-java@v1with:java-version: 11
这一步设置了构建所需的 Java 开发工具包 (JDK) 版本。
3. 使 Gradle 可执行
- name: Make Gradle executablerun: chmod +x ./gradlew
这一步确保 gradlew
文件具有执行权限,从而可以运行 Gradle 构建工具。
4. 构建 Release APK
- name: Build Release APKrun: ./gradlew assembleRelease
这一步运行 Gradle 命令来构建 Release 版本的 APK。
5. 使用 Hub 发布
- name: Releasing using Hubuses: sangatdesai/release-apk@mainenv:GITHUB_TOKEN: ${{ secrets.TOKEN }}APP_FOLDER: app
这一步使用 sangatdesai/release-apk
动作将生成的 APK 发布到 GitHub Releases。
总结
通过上述步骤,你可以使用 GitHub Actions 自动化编译和发布 Android APK。这个流程不仅提升了开发效率,还确保了每次发布的一致性。如果你需要构建不同口味的 APK,只需修改 YAML 文件中的相应命令即可。希望这篇文章能帮助你更好地理解和应用 GitHub Actions 来自动化你的 Android 项目。# 使用 GitHub Actions 编译和发布 APK
在现代软件开发中,持续集成和持续部署(CI/CD)已成为不可或缺的一部分。对于 Android 开发者来说,自动化编译和发布 APK 不仅节省时间,还能确保每次发布的一致性。本文将介绍如何使用 GitHub Actions 自动化编译和发布 APK。
前言
本文将指导你如何通过 GitHub Actions 编译你的 Android 项目并自动发布 APK。当你向仓库推送一个新标签时,GitHub Actions 将触发构建过程,并将生成的 APK 附加到同一个标签的发布中。
准备工作
创建 GitHub Actions 配置文件
在你的 Android 项目的根目录下创建一个 .github/workflows/android.yml
文件,并将以下内容粘贴到文件中:
name: Build & Publish Release APKon:push:tags:- '*'jobs:Gradle:runs-on: ubuntu-lateststeps:- name: checkout codeuses: actions/checkout@v2- name: setup jdkuses: actions/setup-java@v1with:java-version: 11- name: Make Gradle executablerun: chmod +x ./gradlew- name: Build Release APKrun: ./gradlew assembleRelease- name: Releasing using Hubuses: sangatdesai/release-apk@mainenv:GITHUB_TOKEN: ${{ secrets.TOKEN }}APP_FOLDER: app
配置 Secrets
你需要在 GitHub 仓库的设置中配置一个 secret token,以便将生成的 APK 发布到你的仓库,并附加到创建的标签上。按照以下步骤创建一个新的访问 token:
- 进入 GitHub 仓库的
Settings > Secrets
。 - 创建一个新的 secret,命名为
TOKEN
,并将你的访问 token 粘贴进去。
配置环境变量
在上述 YAML 文件中,APP_FOLDER
环境变量指定了搜索 APK 的主文件夹。大多数情况下,这个文件夹是 app
。
推送标签
在本地仓库中,按照以下命令推送一个新的标签以触发 GitHub Actions:
git add .
git commit -m "new release"
git push
git tag 1.0
git push origin 1.0
定制 APK 构建口味
默认情况下,此配置文件将创建 release
口味的 APK。如果你想要构建 debug
口味的 APK,可以修改 YAML 文件中的相应命令:
- name: Build Debug APKrun: ./gradlew assembleDebug
详细步骤解析
1. Checkout 代码
- name: checkout codeuses: actions/checkout@v2
这一步将你的代码从 GitHub 仓库中检出,以便在虚拟机上进行构建。
2. 设置 JDK
- name: setup jdkuses: actions/setup-java@v1with:java-version: 11
这一步设置了构建所需的 Java 开发工具包 (JDK) 版本。
3. 使 Gradle 可执行
- name: Make Gradle executablerun: chmod +x ./gradlew
这一步确保 gradlew
文件具有执行权限,从而可以运行 Gradle 构建工具。
4. 构建 Release APK
- name: Build Release APKrun: ./gradlew assembleRelease
这一步运行 Gradle 命令来构建 Release 版本的 APK。
5. 使用 Hub 发布
- name: Releasing using Hubuses: sangatdesai/release-apk@mainenv:GITHUB_TOKEN: ${{ secrets.TOKEN }}APP_FOLDER: app
这一步使用 sangatdesai/release-apk
动作将生成的 APK 发布到 GitHub Releases。
总结
通过上述步骤,你可以使用 GitHub Actions 自动化编译和发布 Android APK。这个流程不仅提升了开发效率,还确保了每次发布的一致性。如果你需要构建不同口味的 APK,只需修改 YAML 文件中的相应命令即可。希望这篇文章能帮助你更好地理解和应用 GitHub Actions 来自动化你的 Android 项目。