跳到主要内容

通过CI/CD开发Android

了解如何构建Android应用程序、签署APK并将其发布到Google Play。

Buddy可让您创建交付流水线,只需一次推送到分支,即可构建、签署和部署您的Android应用程序到Google Play。流水线包含您可以根据需要配置的操作Example Andriod pipeline

配置非常简单,只需几分钟即可完成。

1. 选择您的Git存储仓

Buddy支持所有热门的Git托管提供商,包括GitHub、Bitbucket与GitLab。您还可以使用自己私有的Git服务器或直接使用 Buddy内建的Git上托管代码。 Supported Git providers

2. 新添交付流水线

输入流水线的名称,选择触发模式,并定义Buddy从中提取代码的分支: Exemplary pipeline settings

提示

分支分配 — 此为Buddy将部署的分支。 如果将触发模式设置为“事件”,Buddy将在每次推送到该分支时执行流水线运行。

信息

触发器模式

  • 事件(自动) — 开发环境时推荐使用
  • 手动(点击触发) — 产品环境时推荐使用
  • 定时(按时间间隔) — 暂存/测试的时候推荐使用

3. 添加操作

Buddy可让您从数十种预定义的操作中进行选择。 在此示例中,我们将添加3个操作来执行以下任务:

  • 构建您的Android应用
  • 使用您的密钥签署应用程序
  • 将APK上传到 Google Play
  • 向Slack发送通知

3.1 构建您的Android应用

找到并点击构建APK操作进行配置。您可以在此处选择SDK和构建工具的版本并确定要执行的命令。 默认命令是:

export ANDROID_HOME="/opt/android/sdk"
export PATH=$PATH:/opt/android/sdk/cmdline-tools/tools/bin
if [ ! -d "$ANDROID_HOME/cmdline-tools" ]; then
curl -o sdk.zip https://dl.google.com/android/repository/commandlinetools-linux-7583922_latest.zip
unzip sdk.zip
rm sdk.zip
mkdir "$ANDROID_HOME/cmdline-tools"
mv cmdline-tools "$ANDROID_HOME/cmdline-tools/tools"
yes | "$ANDROID_HOME/cmdline-tools/tools/bin/sdkmanager" --licenses
fi

chmod +x gradlew
#./gradlew assembleDebug
./gradlew assembleRelease

Android build commands

3.2 签署您的应用(APK)

从操作选项上添加 签署APK,选择APK的路径并提供密钥库及其密码: Sign APK configuration

3.3 部署APK到Google Play

目前应用程序已经可以部署了,转向 Android 操作选项区域并选择 Google Play: Google Play action

添加操作时,您可以选择应上传的内容和位置: Google Play action configuration

3.4 发送通知到Slack

您可以将Buddy配置为在部署后向您的团队发送消息。 在此我们将使用Slack作为示例: Notification actions

信息

如果您将此操作添加到 操作失败时运行,则Buddy只会在您的构建或部署出现问题时发送消息。

4. Google Play: 私钥与权限设置

为了将您的应用程序交付到Google Play,您需要做两件事:

  1. 使用.json格式的私钥创建服务帐户
  2. 从Google Play开发者控制台设置适当的权限

4.1 创建服务帐号

  1. 打开Google Play开发者控制台 (如果您尚未登录,则需要先登录)
  2. 在左侧边栏中, 点击 SettingsAPI access: Google Play Console API access page
  3. 点击 Create Service Account. 如下图将会弹出一个窗口: Creating Service Account
  4. 打开 Google API控制台,点击 Create Service Account 按钮: Google API Console
  5. 输入详细信息并选中 Furnish a new private key,确保选择JSON作为密钥类型: Creating a new private key
  6. 点击 Create 按钮以创建服务帐户---将自行下载服务帐户的私钥。
提醒

此时,JSON私钥已下载到您的计算机 (您需要在下一步将此文件上传到 Buddy). 请确保您将私钥存储在安全的地方,因为如果丢失了,您将无法找回。

4.2 设置权限

  1. 返回 Google Play开发者控制台
  2. Service Accounts 面板上, 找到您刚刚创建的帐户,然后单击 Grant Access
  3. 您可以在此处调整服务帐户的权限。确保在 Role 下拉列表中选择 Release managerGranting access to a new user
  4. 当就绪时点击 Add User

恭喜!恭喜!您现在可以将应用程序部署到Google Play商店啦!

5. 总结

恭喜!您刚刚自动化了整个部署过程。 推送到选定的分支并观察Buddy提取、构建和部署您的项目。 应用持续部署后,您现在可以专注于真正重要的事情:开发出色的应用程序!🔥

备注

注:本文只是Buddy功能特色其中的一个简短示例。您可以为暂存和生产环境创建额外的流水线, 与您最喜欢的服务(AWS、谷歌云、Azure)集成,, 触发测试于拉取请求、构建Docker镜像同时推送到注册中心(Registry)---功能设置无可限量。

信息

如果您希望我们为您的项目创建交付流水线,请发送邮件至 support@buddy.red,我们将很乐意为您提供帮助!