浏览器构建 – 第 2 步:创建签名密钥库

备注

这是浏览器构建的第 2 步。请先完成第 1 步 – 创建 GitHub 分叉。

AndroidAPS 必须使用存储在 Java KeyStore (JKS) 中的私钥进行签名。这是整个流程中最重要的决定,因为它决定你以后能否在不重新安装的情况下升级 AAPS。

备注

接下来的步骤会将私密信息(你的密钥库,以及之后的 Google Drive 访问权限)作为 secret 存储在 GitHub 中。Secret 只是一个加密值,只有你自己的构建可以读取——其他人,即使查看你的分叉,也无法看到它。这正是保护你的构建归你所有的机制。

选择密钥库策略

请阅读两个选项,选择适合自己情况的一个。

选项 1 – 生成新的密钥库(新用户)

如果符合以下任一情况,请选择此项:

  • 这是你第一次构建 AAPS。

  • 你没有以前使用 Android Studio(电脑)构建时的密钥库。

  • 你忘记了密钥库密码或别名。

警告

使用选项 1构建 AAPS 会创建一个全新的密钥库,因此不能直接升级现有的 AAPS。要迁移到这个新构建,你需要:

  1. 在手机上导出设置。

  2. 将手机上的设置文件复制或上传到外部位置(例如电脑、云存储服务等)。

  3. 按照选项 1 中的说明生成新的已签名 APK,并将其传输到手机。

  4. 在手机上卸载旧版 AAPS。

  5. 在手机上安装新版 AAPS。

  6. 导入设置,恢复目标和配置。

  7. 从 Nightscout 恢复数据。

→ 继续执行选项 1 – 生成新的密钥库

选项 2 – 上传现有密钥库(现有用户/以前的用户)

如果你已经有在 Android Studio 电脑上以前构建 AAPS 时使用的 .jks 密钥库,并且知道其密码和别名(通常为 key0),请选择此项。

这样可以使当前 AAPS 保持可升级:未来更新会使用同一密钥库。

→ 继续执行选项 2 – 上传现有密钥库


备注

下一页将让你选择设备(Android、电脑或 iPhone)。每个设备页面都会说明如何针对该设备正确下载和打开准备文件,以及如何创建密钥库。构建的 AAPS 应用会保存到你的 Google Drive。

下一步:选择上面的选项 1或选项 2,然后按照设备页面操作。


导出密钥库(可选)

如果要导出已存储的密钥库,请使用此方法。

此脚本会将你之前配置的密钥库信息(来自选项 1 或选项 2)导出为受密码保护的 ZIP 文件,并保存到 Google Drive 的 /AAPS/KeyStore 目录。

警告

使用此导出方法前,请确保已完成密钥库和 Google Drive 设置。

操作步骤:

  1. 添加 ZIP 密码 Secret:

    • 转到仓库的Settings → Secrets and variables → Actions。

    • 点击 New repository secret。

    • 在 Name 字段中输入:ZIP_PASSWORD。

    • 在 Secret 字段中输入自定义的 ZIP 加密密码。

    • 密码只能使用英文字母和数字(不能使用特殊符号)。

    • 点击 Add secret。

    aaps_ci_zip_password.png

  2. 运行导出工作流:

    • 转到仓库中的 Actions 标签页。

    • 选择 CI KeyStore Export。

    • 点击 Run workflow。

    • 导出的密钥库 ZIP 文件会保存到你的 Google Drive。

    aaps_ci_keystore_export.png

    aaps_ci_keystore_export_run.png