# 为 Android 应用程序签名

> Follow this workflow to sign your Android application during the build process.

[Unity Build Automation](https://unity.com/solutions/ci-cd) 会在构建过程中为 Android 应用程序签名。这可以确保 Android 应用程序满足在设备上安装或部署到 Google Play 应用商店的要求。

Android 要求所有 Android 软件包 (APK) 和 Android 应用程序捆绑包都必须使用证书进行数字签名，然后才能在设备上安装或进行发布。此证书用于标识应用程序的开发者并在应用程序之间建立信任关系。

## 创建密钥库##create-a-keystore

密钥库是一个二进制文件，其中包含一个或多个私钥。您需要创建一个密钥库，才能为 Android 应用程序签名。

有关如何使用 Unity 编辑器的密钥库管理器创建密钥库的详细说明，请参阅 Unity 手册中的[创建新密钥库](https://docs.unity3d.com/Manual/android-keystore-create.html)。

> **Important:**
>
> **重要**：请将密钥库文件存储在安全位置并牢记密码。如果丢失了密钥库，则无法执行以下操作：

> **Note:**
>
> * 在 Google Play 应用商店中更新您的应用程序。
> * 上传使用相同包名称的应用程序。
> * 创建使用相同密钥签名的应用程序捆绑包。

## 配置 Unity Build Automation 签名##configure-unity-build-automation-signing

将上传的签名凭据与 Android 构建目标相关联：

> **Note:**
>
> **注意**：配置签名凭据后，您可以将自动为 Android Artifact 签名的构建排入队列。

1. 打开 [Unity Dashboard](https://cloud.unity.com/home/organizations/default/projects/default/cloud-build/config) 中的 **DevOps**。
2. 选择 **Build Automation** > **Configurations（配置）**。
3. 选择 Android 构建目标对应的编辑（铅笔）图标。或者，也可以为 Android [创建新构建目标](../basic-build-configuration/overview#choose-a-build-configuration-flow)。
4. 在构建目标 **Basic settings（基本设置）** 的 **Credentials（凭据）** 下，输入您的 **Bundle ID**。您的 Bundle ID 需要是唯一的，用于在设备和 Google Play 应用商店上识别 Android 应用程序。
5. 选择 Credentials set（凭据集）字段，然后从下拉选单中选择 **Add new Provisioning credentials (for release)（添加新的发布资源调配凭据）**。
6. 输入以下信息：
   | 字段                           | 描述               |
   | ---------------------------- | ---------------- |
   | **Name（名称）**                 | 为凭据集输入一个名称。      |
   | **Keystore file（密钥库文件）**     | 上传您的密钥库文件。       |
   | **Keystore password（密钥库密码）** | 输入分配给密钥库文件的密码。   |
   | **Key alias（密钥别名）**          | 输入您在生成密钥库时创建的别名。 |
   | **Key password（密钥密码）**       | 输入分配给密钥的密码。      |
7. 选择 **Save Changes（保存更改）** 以应用更改。


**构建目标配置 - Android 签名:**
![构建目标配置 - Android 签名](/api/media?file=/build-automation/media/images/build-automation/android-credentials.png "UBA - 构建目标配置 - Android 签名")

> **Note:**
>
> **注意**：在开发和测试时，您可以选择 **Auto-generated debug keystore (for development only)（自动生成的调试密钥库（仅用于开发））** 作为凭据集。这会自动生成用于开发构建的调试密钥库。要发布到 Google Play 应用商店，您需要使用自己创建和维护的发布密钥库，因为您不能使用调试密钥库进行应用程序分发。
