# 使用环境变量

> Learn how to use built-in and custom environment variables in Unity Build Automation.

在 Unity Build Automation (UBA) 中，可以使用内置环境变量并定义自定义环境变量：

* 内置变量会自动显示构建环境和源代码控制元数据。
* 您可以设置自定义环境变量来根据具体需求配置构建前和构建后脚本。

## 常见的内置环境变量##common-built-in-environment-variables

UBA 提供了在构建期间自动可用的内置环境变量。这些变量提供了有关构建环境、目标设置和版本控制信息的有用详细信息。例如，以下是常用的内置环境变量：

| 变量名称            | 描述                           |
| --------------- | ---------------------------- |
| `UNITY_VERSION` | 构建所使用的 Unity 版本。             |
| `BUILD_TARGET`  | 目标平台，例如 Android、iOS 或 WebGL。 |
| `BUILD_PATH`    | 构建输出目录的路径。                   |
| `PROJECT_PATH`  | Unity 项目的根目录路径。              |
| `BUILD_NUMBER`  | 构建的唯一标识符。                    |
| `GIT_BRANCH`    | 当前正在构建的 Git 分支。              |
| `GIT_COMMIT`    | 当前 Git 提交的哈希值。               |

有关可用环境变量的完整列表，请参阅[环境变量参考文档](/build-automation/reference/available-environment-variables.md)。

## 设置环境变量##set-environment-variables

在**构建目标**级别配置环境变量。这使您能够为每个构建目标指定不同的变量，这样您就可以针对各种平台或环境（例如暂存环境或生产环境）使用量身定制的配置。

在 UBA 中定义环境变量：

1. 转到 [Unity Dashboard](https://cloud.unity.com/home/organizations/default/projects/default/cloud-build/config) 并选择您的项目。
2. 选择 **Build Automation** > **Configurations（配置）**。
3. 选择编辑（铅笔）图标以打开您选择的构建目标设置。
4. 选择 **Advanced Settings（高级设置）**。
5. 在 **Environment variables（环境变量）** 下，输入变量键和值。
6. 选择 **Apply（应用）**，然后选择页面顶部的 **Save Changes（保存更改）**。


**环境变量配置面板。:**
![环境变量配置面板。](/api/media?file=/build-automation/media/images/build-automation/environment-variables.png "UBA - 环境变量")

## 使用环境变量##use-environment-variables

定义环境变量后，可以在构建过程中通过 [Unity 脚本](#access-variables-in-unity-c-scripts)或自定义构建前和构建后 [shell 脚本](#access-variables-in-shell-scripts)中引用这些变量。

> **Note:**
>
> **注意**：确保变量键完全匹配，因为它们区分大小写。

### 在 Unity C# 脚本中访问变量##access-variables-in-unity-c-scripts

使用 `System.Environment` 类来检索环境变量：

```csharp
string apiKey = System.Environment.GetEnvironmentVariable("MY_API_KEY");
if (!string.IsNullOrEmpty(apiKey))
{
    Debug.Log("API Key loaded successfully.");
}
else
{
    Debug.LogWarning("API Key not found.");
}
```

### 在 shell 脚本中访问变量##access-variables-in-shell-scripts

如果您使用构建前或构建后 shell 脚本，可以使用美元符号前缀来访问特定的环境变量：

```sh
echo "Build Number: $BUILD_NUMBER"
```

### 环境变量缺失##missing-environment-variables

如果无法访问环境变量，请检查以下解决方案：

* 检查是否在构建目标设置中正确定义了环境变量。
* 验证变量的拼写是否正确，以及它们是否符合大小写要求。
* 查看[构建日志](../check-build-results/overview#view-logs)以了解任何相关的警告或错误。
* 在构建前或构建后脚本中使用诊断命令来检查可用变量：
  * Linux 或 macOS：`env`
  * Windows：`set`
