# Android Player 设置

> Reference documentation for Android Player settings.

本页面将详细介绍 Android 平台的 Player 设置。有关常规 Player 设置的描述，请参阅 [Player Settings](/engine/6000.0/manual/unity-editor/editor-features/comp-manager-group/class-player-settings.md)。


**Android 平台的 Player 设置。:**
![](/api/media?file=/engine/6000.0/media/images/class-PlayerSettingsAndroid.png)

有关属性的描述根据 Player UI 中的相应部分进行分组：

* [Icon](#Icon)
* [Resolution and Presentation](#Resolution)
* [Splash Image](#Splash)
* [Other Settings](#Other)
* [Publishing Settings](#Publishing)

## 图标 (Icon)##icon

使用 **Icon** 部分来指定设备上表示您应用程序的图标。


**Android 平台的 Icon 设置。:**
![](/api/media?file=/engine/6000.0/media/images/PlayerSetAndroidIcon.png)

| **设置**       | **描述**                                                   |
| ------------ | -------------------------------------------------------- |
| **Adaptive** | 指定不同大小的纹理，用于在运行 Android 8.0（API 级别 26）或更高版本的设备上表示您的应用程序。 |
| **Round**    | 指定不同大小的纹理，用于在运行 Android 7.1（API 级别 25）或更高版本的设备上表示您的应用程序。 |
| **Legacy**   | 指定不同大小的纹理，用于在运行 Android 7.1（API 级别 25）之前版本的设备上表示您的应用程序。  |

## 分辨率和演示 (Resolution and Presentation)##resolution-and-presentation

使用 **Resolution and Presentation** 部分的以下设置可以自定义屏幕外观的各个方面。

* [Resolution](#Resolution)
* [Resolution Scaling](#Scaling)
* [Supported Aspect Ratio](#Aspect)
* [Orientation](#Orientation)
* [Allowed Orientations for Auto Rotation](#supportedOris)
* [Miscellaneous](#OtherRes)

### 分辨率 (Resolution)##enable-android-banner

使用 **Resolution** 部分来自定义屏幕模式和默认大小。

| **设置**                       | **描述**                                                                                                                                                                |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| ---------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Run Without Focus**        | 启用此属性时，即使应用程序不在焦点上但仍可见时（例如在支持分屏模式的设备上），也能使应用程序保持运行。禁用后，应用程序会暂停，但仍保持可见。                                                                                                |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| **Fullscreen Mode**          | 指定窗口在设备上的显示方式。此设置定义了启动时的默认窗口模式。                                                                                                                                       |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
|                              | **Fullscreen Window**                                                                                                                                                 | 应用程序窗口将填充设备的全屏原生分辨率。为了填充全屏窗口，Unity 会缩放应用程序的内容。**分辨率缩放模式 (Resolution Scaling Mode)** 控制 Unity 缩放内容的方式。在此模式下，导航栏始终隐藏。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
|                              | **Windowed**                                                                                                                                                          | 应用程序使用标准的非全屏可移动窗口。窗口的大小取决于应用程序的分辨率。在此模式中，窗口大小默认可调整。要防止应用程序调整大小，请禁用 [Resizeable Activity](#resizeable)。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| **Resizeable Activity**      | 指示用户是否能调整应用程序的大小。此设置可在 Android 手机和平板电脑上的应用程序中启用多窗口功能。有关更多信息，请参阅 [Google 开发者文档](https://developer.android.com/guide/topics/ui/multi-window)。                           |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| **Default Window Width**     | 应用程序窗口的默认宽度（以像素为单位）。仅在 **Fullscreen Mode** 设置为 **Windowed** 时，此选项才可用。                                                                                                 |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| **Default Window Height**    | 应用程序窗口的默认高度（以像素为单位）。仅在 **Fullscreen Mode** 设置为 **Windowed** 时，此选项才可用。                                                                                                 |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| **Minimum Window Width**     | 应用程序窗口的最小宽度（以像素为单位）。仅在 **Fullscreen Mode** 设置为 **Windowed** 时，此选项才可用。                                                                                                 |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| **Minimum Window Height**    | 应用程序窗口的最小高度（以像素为单位）。仅在 **Fullscreen Mode** 设置为 **Windowed** 时，此选项才可用。                                                                                                 |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| **Hide Navigation Bar**      | 指示是否隐藏窗口顶部的导航栏。                                                                                                                                                       |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| **Render outside safe area** | 启用此选项可允许应用程序使用所有可用的屏幕空间进行渲染，包括显示中的镂空（凹口）区域。有关更多信息，请参阅 Android 的[显示镂空支持](https://developer.android.com/guide/topics/display-cutout)文档。此设置的行为因 Android 版本的不同而异，具体如下表所示。 |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
|                              | **Android 15 及更高版本**                                                                                                                                                  | 此设置无效，因为应用程序默认使用整个屏幕空间。有关更多信息，请参阅 [Android 文档](https://developer.android.com/reference/android/view/WindowManager.LayoutParams?_gl=1*1x8u5ar*_up*MQ..*_ga*MjQ0MTQ3Nzk4LjE3MjE5OTAzMDE.*_ga_6HH9YJMN9M*MTcyMTk5MDMwMC4xLjAuMTcyMTk5MDMwMC4wLjAuMA..#LAYOUT_IN_DISPLAY_CUTOUT_MODE_ALWAYS)。                                                                                                                                                                                                                                                                                                                                                                                                             |
|                              | **Android 11 至 14**                                                                                                                                                   | 启用后，应用程序将使用整个可用屏幕空间。禁用后，应用程序仅在镂空区域位于系统栏（设备的顶部或底部）内时，才会使用周围的空间，否则应用程序会在镂空区域上方显示黑条。有关应用程序何时使用镂空区域周围空间的更多信息，请参阅 [Android 文档](https://developer.android.com/reference/android/view/WindowManager.LayoutParams?_gl=1*1x8u5ar*_up*MQ..*_ga*MjQ0MTQ3Nzk4LjE3MjE5OTAzMDE.*_ga_6HH9YJMN9M*MTcyMTk5MDMwMC4xLjAuMTcyMTk5MDMwMC4wLjAuMA..#LAYOUT_IN_DISPLAY_CUTOUT_MODE_DEFAULT)。                                                                                                                                                                                                                                                                                                                                 |
|                              | **Android 10 及更旧版本**                                                                                                                                                  | 启用后，应用程序将使用设备短边（例如顶部或底部）上镂空区域周围的屏幕空间。但是，应用程序会使用黑条遮挡设备长边（例如侧面）上的镂空区域。有关应用程序如何使用短边上镂空区域周围的空间的更多信息，请参阅 [Android 文档](https://developer.android.com/reference/android/view/WindowManager.LayoutParams?_gl=1*1x8u5ar*_up*MQ..*_ga*MjQ0MTQ3Nzk4LjE3MjE5OTAzMDE.*_ga_6HH9YJMN9M*MTcyMTk5MDMwMC4xLjAuMTcyMTk5MDMwMC4wLjAuMA..#LAYOUT_IN_DISPLAY_CUTOUT_MODE_SHORT_EDGES)。禁用后，应用程序仅在镂空部分位于系统栏内时使用其周围的空间，否则应用程序会在镂空区域上方显示黑条。有关应用程序何时使用镂空区域周围空间的更多信息，请参阅 [Android 文档](https://developer.android.com/reference/android/view/WindowManager.LayoutParams?_gl=1*1x8u5ar*_up*MQ..*_ga*MjQ0MTQ3Nzk4LjE3MjE5OTAzMDE.*_ga_6HH9YJMN9M*MTcyMTk5MDMwMC4xLjAuMTcyMTk5MDMwMC4wLjAuMA..#LAYOUT_IN_DISPLAY_CUTOUT_MODE_DEFAULT)。 |
| **Optimized Frame Pacing**   | 启用此选项可允许 Unity 均匀分配帧，以减少帧率变化，创造更流畅的体验。                                                                                                                                |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |

### 分辨率缩放 (Resolution Scaling)##resolution

使用 **Resolution Scaling** 部分可自定义与屏幕分辨率缩放相关的设置。使用低于设备原生分辨率的分辨率可以提高性能和电池续航时间。

| **设置**                                | **描述**                                                                                                                                                                                                                                                                                                                                                            |                                                                                                         |
| ------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- |
| **Resolution Scaling Mode**           | 指定应用程序是否以及如何缩放分辨率。您可将缩放比例设置为等于或低于原生屏幕分辨率。使用较低的分辨率可以提高性能和电池续航时间。                                                                                                                                                                                                                                                                                                   |                                                                                                         |
|                                       | **Disabled**                                                                                                                                                                                                                                                                                                                                                      | 将不会应用分辨率缩放，且应用程序以设备的原生屏幕分辨率进行渲染。                                                                        |
|                                       | **FixedDPI**                                                                                                                                                                                                                                                                                                                                                      | 使用目标 DPI 应用分辨率缩放。此属性可用于优化性能和电池续航时间，或专门用于特定的 DPI 设置。                                                     |
|                                       | **Letterboxed**                                                                                                                                                                                                                                                                                                                                                   | 在渲染输出中添加黑条，以防止内容拉伸。这一过程称为[裁剪黑边 (letterboxing)](https://en.wikipedia.org/wiki/Letterboxing_\(filming\))。 |
| **Target DPI**                        | 应用程序的分辨率。如果设备的原生屏幕 DPI 高于此值，则 Unity 会降低应用程序的分辨率，以匹配此设置。Unity 使用 **min(Target DPI \* Factor / Screen DPI, 1)** 来计算缩放，其中 **Factor** 是 [Quality 设置](/engine/6000.0/manual/unity-editor/editor-features/comp-manager-group/class-quality-settings.md)中的 **Resolution Scaling Fixed DPI Factor**。\*\*注意：\*\*仅当 **Resolution Scaling Mode** 设置为 **Fixed DPI** 时才会显示此选项。 |                                                                                                         |
| **Reset resolution on window resize** | 指示当原生窗口大小发生变化时是否将屏幕分辨率设置为匹配新的原生窗口大小。如果将 **Resolution Scaling Mode** 设置为 **Fixed DPI**，Unity 将根据 **Fixed DPI** 属性重新计算分辨率。                                                                                                                                                                                                                                          |                                                                                                         |
| **Blit Type**                         | 控制是否使用 blit 将最终图像渲染到屏幕。使用 blit 选项兼容大部分设备，但通常比不使用 blit 更慢。                                                                                                                                                                                                                                                                                                         |                                                                                                         |
|                                       | **Always**                                                                                                                                                                                                                                                                                                                                                        | Unity 渲染到离屏缓冲区，然后使用位块传输 (blit) 将缓冲区的内容复制到设备的帧缓冲区。此选项兼容大部分设备，但通常比 不使用 blit 更慢。                           |
|                                       | **Never**                                                                                                                                                                                                                                                                                                                                                         | Unity 渲染到设备操作系统提供的帧缓冲区。如果失败，应用程序将在设备日志中打印一次性警告。这通常比使用 blit 更快，但并非与所有设备兼容。                               |
|                                       | **Auto**                                                                                                                                                                                                                                                                                                                                                          | Unity 会尽可能渲染到设备操作系统提供的帧缓冲区。如果失败，Unity 会在设备控制台打印警告，并使用 blit 将最终图像渲染到屏幕。                                  |

### 支持的宽高比 (Supported Aspect Ratio)##resolution-scaling

使用 **Supported Aspect Ratio** 部分可自定义与要支持的设备宽高比相关的设置。

| **设置**                | **描述**                                                                               |                                   |
| --------------------- | ------------------------------------------------------------------------------------ | --------------------------------- |
| **Aspect Ratio Mode** | 指定应用程序支持的最大宽高比。如果设备的宽高比大于此宽高比，Unity 会将此宽高比用于应用程序，并添加黑条，使应用程序不会拉伸。                    |                                   |
|                       | **Legacy Wide Screen (1.86)**                                                        | 应用程序支持最多不超过 Android 旧版宽屏宽高比的宽高比。  |
|                       | **Native Aspect Ratio**                                                              | 应用程序支持最多不超过 Android 原生宽高比的宽高比。    |
|                       | **Custom**                                                                           | 应用程序支持最多不超过在 **Maximum** 中设置的宽高比。 |
| **Minimum**           | 自定义最小宽高比。此值必须小于 **Maximum**。**注意**：仅当 **Aspect Ratio Mode** 设置为 **Custom** 时，才显示此设置。 |                                   |
| **Maximum**           | 自定义最大宽高比。此值必须大于 **Minimum**。**注意**：仅当 **Aspect Ratio Mode** 设置为 **Custom** 时，才显示此设置。 |                                   |

### 其他 (Miscellaneous)##supported-aspect-ratio

| **设置**                     | **描述**             |                 |
| -------------------------- | ------------------ | --------------- |
| **Show Loading Indicator** | 指定是否以及如何显示加载指示符。   |                 |
|                            | **Don't Show**     | 不显示加载指示符。       |
|                            | **Large**          | 显示大号加载指示符。      |
|                            | **Inversed Large** | 显示一个反色的大号加载指示符。 |
|                            | **Small**          | 显示小号加载指示符。      |
|                            | **Inversed Small** | 显示一个反色的小号加载指示符。 |

### 方向 (Orientation)##miscellaneous

{ /*  This table uses single sourcing. For information on how to edit it, see https://confluence.unity3d.com/display/DOCS/Single-sourcing+table+rows.  */ }

| **属性**                     | **描述**                                                                                                                                                                   |
| -------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| **Auto Rotation Behavior** | 指定当 **Default Orientation** 设置为 **Auto Rotation** 时，应用程序窗口如何根据设备的旋转传感器和方向设置调整其方向。**注意**：仅当 **Default Orientation** 设置为 **Auto Rotation** 时，此属性才可见。默认情况下，此属性设置为 **User**。 |
| **User**                   | 应用程序窗口根据设备的方向设置调整方向。如果用户锁定设备的自动旋转方向设置，则应用程序窗口不会遵循 **Allowed Orientations for Auto Rotation** 部分中的偏好设置。仅当用户关闭设备的自动旋转方向设置时，应用程序窗口才会根据偏好设置进行旋转。                             |
| **Sensor**                 | 无论设备的方向设置如何，应用程序窗口都会根据设备的旋转传感器调整方向。但是，应用程序窗口仅根据 **Allowed Orientations for Auto Rotation** 部分中的偏好设置旋转。                                                                   |

### 自动旋转允许的方向 (Allowed Orientations for Auto Rotation)##orientation

使用 **Allowed Orientations for Auto Rotation** 部分可指定将 **Default Orientation** 设置为 **Auto Rotation** 时应用程序支持的方向。这在某些情况下很有用，例如，将应用程序锁定为横向，但允许用户在左侧横向和右侧横向之间切换。

**注意**：仅当在 Orientation 部分中将 **Default Orientation** 设置为 **Auto Rotation** 时，此部分才可见。

{ /*  This table uses single sourcing. For information on how to edit it, see https://confluence.unity3d.com/display/DOCS/Single-sourcing+table+rows.  */ }

| **属性** | **描述** |
| ------ | ------ |

### 其他 Resolution and Presentation 设置##allowed-orientations-for-auto-rotation

{ /*  This table uses single sourcing. For information on how to edit it, see https://confluence.unity3d.com/display/DOCS/Single-sourcing+table+rows.  */ }

| **属性**                        | **描述**                                                                                                                                                                                                                                                                                                                    |
| ----------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Use 32-bit Display Buffer** | 指示显示缓冲区是否保存 32 位颜色值而不是 16 位颜色值。如果您看到条带，或在 [后期处理效果](/engine/6000.0/manual/rendering-and-post-processing/post-processing-and-full-screen-effects/overview.md) 中需要 Alpha 值，请启用此设置。某些后期处理效果需要此属性，因为它们会以与显示缓冲区相同的格式创建 [渲染纹理](/engine/6000.0/manual/materials-and-shaders/textures/textures-reference/class-render-texture.md)。 |

## Splash Image##splash-image

使用 **Virtual Reality Splash Image** 设置以选择[虚拟现实 (Virtual Reality)](/engine/6000.0/manual/platform-specific/xr.md) 显示的自定义启动画面。有关常见启动画面设置的信息，请参阅 [Splash Screen](/engine/6000.0/manual/unity-editor/editor-features/comp-manager-group/class-player-settings/splash-screen.md)。


**虚拟现实的启动画面设置。:**
![](/api/media?file=/engine/6000.0/media/images/PlayerSetAndroidSplash.png)

以下是通用启动画面设置，可以设置特定于 Android 的 **Static Splash Image** 选项。


**Android 启动画面设置。:**
![](/api/media?file=/engine/6000.0/media/images/PlayerSetAndroidSplashStory.png)

| **设置**      | **描述**                                         |                                              |
| ----------- | ---------------------------------------------- | -------------------------------------------- |
| **Image**   | 指定应用程序用于 Android 启动画面的纹理。启动画面图像的标准大小为 320x480。 |                                              |
| **Scaling** | 指定如何缩放启动画面，以适应设备的屏幕。                           |                                              |
|             | **Center (only scale down)**                   | 按其原生大小绘制图像，除非图像太大，这种情况下 Unity 会缩小图像以适应需要。    |
|             | **Scale to Fit (letter-boxed)**                | 缩放图像，使较长的尺寸精确适应屏幕大小。Unity 将较短尺寸两侧的空白空间填充为黑色。 |
|             | **Scale to Fill (cropped)**                    | 缩放图像，使较短的尺寸精确适应屏幕大小。Unity 将裁剪图像的较长尺寸。        |

## Other Settings##other-settings

此部分可以自定义一系列选项，这些选项分为以下几组：

* [Rendering](#Rendering)
* [Vulkan Settings](#Vulkan)
* [Identification](#Identification)
* [Configuration](#Configuration)
* [Shader Settings](#ShaderSettings)
* [Shader Variant Loading Settings](#ShaderVariantLoading)
* [Script Compilation](#ScriptCompilation)
* [Optimization](#Optimization)
* [Stack Trace](#Logging)
* [Legacy](#Legacy)

### Rendering##additional-resolution-and-presentation-settings

使用这些设置可自定义 Unity 针对 Android 平台渲染游戏的方式。

{ /*  This table uses single sourcing. For information on how to edit it, see https://confluence.unity3d.com/display/DOCS/Single-sourcing+table+rows.  */ }

| **属性**                               | **描述**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| ------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| **Auto Graphics API**                | 禁用此选项可手动选择图形 API 并重新排序。默认情况下会启用此选项，并且 Unity 会尝试使用 Vulkan。如果设备不支持 Vulkan，Unity 将回退到 GLES3.2、GLES3.1 或 GLES3.0。**重要信息**：仅当启用 **Auto Graphics API** 或 **Graphics API** 包含 **OpenGLES3** 时，Unity 才会将 GLES3.1/GLES3.1+AEP/GLES3.2 要求添加到 Android 应用程序清单中。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| **Graphics APIs**                    | 指定应用程序支持的图形 API。Unity 首先尝试使用列表顶部的图形 API，如果设备不支持，Unity 将回退到列表中的下一个图形 API。**注意**：仅当自动图形 API (Auto Graphics API) 设置为假 (false) 时，此属性才可见。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| **Vulkan**                           | 将 Vulkan 作为 API 添加到目标。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| **OpenGLES3**                        | 将 OpenGLES 3 作为 API 添加到目标。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| **Require ES3.1**                    | 指示是否要求最低的 OpenGL ES 3 次要版本为 3.1。仅当启用 **Auto Graphics API** 或 **Graphics API** 包含 **OpenGLES3** 时，此属性才可见。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| **Require ES3.1+AEP**                | 指示是否要求最低的 OpenGL ES 3 次要版本为 3.1+AEP。仅当启用 **Auto Graphics API** 或 **Graphics API** 包含 **OpenGLES3** 时，此属性才可见。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| **Require ES3.2**                    | 指示是否要求最低的 OpenGL ES 3 次要版本为 3.2。仅当启用 **Auto Graphics API** 或 **Graphics API** 包含 **OpenGLES3** 时，此属性才可见。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| **Graphics Jobs Mode**               | 指定要在应用程序中使用的图形作业模式。有关 Unity 中的作业的信息，请参阅 [作业系统概述](/engine/6000.0/manual/scripting/optimization/job-system/overview.md)。**注意**：仅当启用了 **Graphics Jobs** 并将 **Graphics API** 设置为 Vulkan 时，此选项才可用。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| **Native**                           | 主线程为工作线程编写 Unity 图形命令。工作线程将命令写入渲染线程使用的任务执行器。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| **Legacy**                           | 主线程为工作线程编写 Unity 图形命令。工作线程将命令直接写入渲染线程。渲染线程读取 Unity 图形命令并将它们转换为原生图形命令。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| **Split**                            | 主线程为工作线程编写 Unity 图形命令。渲染线程读取 Unity 图形命令并将它们转换为原生图形命令。然后，渲染线程启动工作线程来编写原生图形命令。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| **Texture compression formats**      | 在 ASTC、ETC2 和 ETC（ETC1 表示 RGB，ETC2 表示 RGBA）、DXTC 和 DXT + RGTC(BC4, BC5) 之间进行选择。请参阅 [纹理压缩格式概述](/engine/6000.0/manual/class-texture-importer-override.md#android)，以了解有关如何选择正确格式的更多信息。可为此列表添加多种纹理压缩格式以获得 [纹理压缩目标](/engine/6000.0/manual/platform-specific/android/building-and-delivering/distribution/google-play.md#texture-compression-targeting) 支持，但不能同时在此列表中包含 DXT 和 DXT + RGTC(BC4, BC5)。如果启用纹理压缩目标，Unity 还会启用 [Split Application Binary](#splitapplicationbinary)。请参阅 [纹理压缩设置](/engine/6000.0/manual/platform-specific/android/introducing/requirements-and-compatibility.md#texture-compression)以了解有关如何与 [构建设置](/engine/6000.0/manual/platform-specific/android/building-and-delivering/build-settings.md) 中的纹理压缩设置交互的更多详细信息。**注意**：如果 [导出](/engine/6000.0/manual/platform-specific/android/building-and-delivering/export-process.md) 或将应用程序构建为 APK，Unity 将仅使用此列表中的第一种纹理压缩格式。 |
| **OpenGL：Profiler GPU Recorders**    | 指示使用 OpenGL 渲染时是否启用性能分析器录制器。此选项始终为其他渲染 API 启用，但由于与帧定时统计信息和 GPU 性能分析器的潜在兼容性问题，此选项在 OpenGL 上为可选项。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| **Virtual Texturing (Experimental)** | 指示是否启用 [虚拟纹理](/engine/6000.0/manual/materials-and-shaders/textures/texture-loading/svt-streaming-virtual-texturing.md)。**注意**：虚拟纹理与 Android 不兼容。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| **360 Stereo Capture**               | 指示 Unity 是否可以捕获立体 360 图像和视频。**注意**：360 立体捕捉与 Android 不兼容。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |

### Vulkan 设置 (Vulkan Settings)##rendering

| **属性**                               | **描述**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| ------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Android Vulkan Deny Filter List**  | 指定用于确定哪些 Android 设备在运行 Unity 应用程序时不应使用 Vulkan API 的条件。使用以下参数集来定义拒绝条件。所有参数都是可选的。您可以使用 [正则表达式](https://learn.microsoft.com/en-us/dotnet/standard/base-types/regular-expressions) 来设置参数，Vulkan API 版本和 Driver 版本参数除外。Unity Editor 显示正则表达式无效的错误。有关更多信息，请参阅有关 [允许或拒绝 Vulkan API 的使用](/engine/6000.0/manual/platform-specific/android/developing/graphics/allow-deny-vulkan-usage.md) 的文档。**注意**：如果未在 Player Settings 中包含其他图形 API（例如 OpenGLES3），则应用程序将不会在符合拒绝条件的任何设备上启动。                                              |
| **Vendor**                           | Android 设备中使用的 GPU 硬件的供应商名称。例如，Qualcomm、ARM。                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| **Device Name**                      | Android 设备中使用的 GPU 型号的名称。例如，Adreno (TM) 740。                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| **Brand**                            | Android 设备的制造商名称。例如，Google、Samsung。                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| **Product Name**                     | Android 设备的商品代号。例如，barbet、mermaid。                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| **Android OS version**               | 设备运行所基于的 Android 操作系统版本。例如，13                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| **Vulkan API version**               | Android 设备上可用的最低所需 Vulkan API 版本。按以下格式之一输入版本号：• `MajorVersion.MinorVersion.PatchVersion`，其中 MinorVersion 和 PatchVersion 是可选的。例如，`1.1.128`。• 以 `0x` 开头且最多 8 位数的十六进制格式。例如，`0x00401080`。**注意**：此参数不允许使用正则表达式。                                                                                                                                                                                                                                                                                                      |
| **Driver version**                   | 所需的最低 Vulkan 设备驱动程序版本。按以下格式之一输入版本号：• `MajorVersion.MinorVersion.PatchVersion`，其中 `MinorVersion` 和 `PatchVersion` 是可选的。例如：`0.676.0`。• 以 `0x` 开头且最多 8 位数的十六进制格式。例如，`0x002a4000`。**注意**：此参数不允许使用正则表达式。                                                                                                                                                                                                                                                                                                             |
| **Android Vulkan Allow Filter List** | 指定用于确定哪些 Android 设备在运行 Unity 应用程序时应始终使用 Vulkan 图形 API 的条件。如果设备同时包含在拒绝和允许过滤器列表 (Deny and Allow Filter Lists) 中，则允许过滤器 (Allow Filter) 优先，并且设备使用 Vulkan API。您可以使用这些列表来限制一大类性能不佳的设备使用 Vulkan API，同时仍然允许该类别中性能较好的设备使用 Vulkan API。如果拒绝和允许过滤器列表 (Deny and Allow Filter Lists) 中都包含相同的值，Unity 将忽略列表中指定的条件。有关更多信息，请参阅有关 [允许或拒绝 Vulkan API 的使用](/engine/6000.0/manual/platform-specific/android/developing/graphics/allow-deny-vulkan-usage.md) 的文档。**注意**：请参阅 [Android Vulkan 拒绝过滤器列表](#DenyFilterList) 以了解用于定义条件的参数的描述。 |

### 标识 (Identification)##vulkan-settings


**Android 平台的标识设置 :**
![](/api/media?file=/engine/6000.0/media/images/android-identification.png)

| **属性**                            | **功能**                                                                                                                                                                                                                                                                                                                                          |                                                                                                                                                                                                                                                                                                                                                    |
| --------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Override Default Package Name** | 指示是否覆盖应用程序的默认包名称。\*\*注意：\*\*此设置会影响 macOS、iOS、tvOS 和 Android。                                                                                                                                                                                                                                                                                    |                                                                                                                                                                                                                                                                                                                                                    |
|                                   | **包名称**                                                                                                                                                                                                                                                                                                                                         | 设置应用程序 ID，用于在设备和 Google Play 应用商店中实现对应用程序的唯一标识。应用程序 ID 必须遵循约定`com.YourCompanyName.YourProductName`，并且只能包含字母数字和下划线字符。每个细分段必须以字母字符开头。有关更多信息，请参阅[设置应用程序 ID (Set the application ID)](https://developer.android.com/studio/build/configure-app-module#set-application-id)。**重要信息**：Unity 会自动删除您键入的任何无效字符。要设置此属性，请启用 **Override Default Package Name**。 |
| **Version**                       | 输入捆绑包的构建版本号，该版本号标识捆绑包的迭代（已发布或未发布）。版本以常见的字符串格式指定，其中包含以点分隔的数字（例如，4.3.2）。（在 iOS 和 Android 之间共享。）                                                                                                                                                                                                                                                   |                                                                                                                                                                                                                                                                                                                                                    |
| **Bundle Version Code**           | 内部版本号。此数字仅用于确定一个版本是否比另一个版本更新，数字越大表示版本越新。这不是向用户显示的版本号；向用户显示的版本号由 `versionName` 属性设置。该值必须设置为整数，例如“100”。您可以根据需要定义，只要每个后续版本的数字更高即可。例如，它可以是构建号。或者，可以通过在低 16 位和高 16 位分别编码“x”和“y”将“x.y”格式的版本号转换为整数。或者，每次发布新版本时，只需将数字加一。如果启用了 **Split APKs by target architecture**，请将此数字保持在 100000 以下。每个 APK 必须具有唯一的版本代码，因此 Unity 为 ARMv7 添加 100000，为 ARM64 添加 200000。 |                                                                                                                                                                                                                                                                                                                                                    |
| **Minimum API Level**             | 运行应用程序所需的最低 Android 版本（API 级别）。                                                                                                                                                                                                                                                                                                                 |                                                                                                                                                                                                                                                                                                                                                    |
| **Target API Level**              | 编译应用程序针对的目标 Android 版本（API 级别）。                                                                                                                                                                                                                                                                                                                 |                                                                                                                                                                                                                                                                                                                                                    |

### 配置 (Configuration)##identification

{ /*  This table uses single sourcing. For information on how to edit it, see https://confluence.unity3d.com/display/DOCS/Single-sourcing+table+rows.  */ }

| **属性**                                | **描述**                                                                                                                                                                                                                                                                                                                     |
| ------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Target Architectures**              | 指定目标架构。                                                                                                                                                                                                                                                                                                                    |
| **ARMv7**                             | 启用对 ARMv7 架构的支持。                                                                                                                                                                                                                                                                                                           |
| **ARM64**                             | 启用对 ARM64 架构的支持。**注意**：仅当 **Scripting Backend** 设置为 **IL2CPP** 时，才启用此属性。                                                                                                                                                                                                                                                   |
| **x86–64 (Magic Leap 2)**             | 启用对 x86–64 架构的支持。**注意**：仅当 **Scripting Backend** 设置为 **IL2CPP** 时，才启用此属性。                                                                                                                                                                                                                                                  |
| **为 Arm64 启用 Armv9 安全功能**             | 为 ARM64 构建启用指针身份验证（PAuth、PAC）和分支目标识别 (BTI)。**注意**：仅当 **ARM64** 设置为目标架构时，才会启用此属性。                                                                                                                                                                                                                                           |
| **Split APKs by target architecture** | 启用此选项可为 **Target Architectures** 中选择的每个 CPU 架构创建单独的 APK。因此，Google Play 应用商店用户的下载文件将变小。这是 Google Play 应用商店的特色功能，在其他应用商店中可能无效。有关更多详细信息，请参阅 [多 APK 支持 (Multiple APK Support)](https://developer.android.com/google/play/publishing/multiple-apks.html)。                                                                       |
| **Install Location**                  | 指定设备上的应用程序安装位置（有关详细信息，请参阅 [有关安装位置的 Android 开发者文档](http://developer.android.com/guide/appendix/install-location.html)。）                                                                                                                                                                                                     |
| **Automatic**                         | 让操作系统决定。用户可以来回移动应用程序。                                                                                                                                                                                                                                                                                                      |
| **Prefer External**                   | 如果可能，将应用程序安装到外部存储（SD 卡）。操作系统不保证会安装到外部存储；如果不能，该应用程序将安装到内部内存。                                                                                                                                                                                                                                                                |
| **Force Internal**                    | 强制将应用程序安装到内部内存。用户将无法将应用程序移动到外部存储。                                                                                                                                                                                                                                                                                          |
| **Internet Access**                   | 选择是否始终将网络 (`INTERNET`) 权限添加到 [Android 应用程序清单](/engine/6000.0/manual/platform-specific/android/introducing/manifest.md)（即使您没有使用任何网络 API）。对于开发版，默认设置为 *Require*。                                                                                                                                                             |
| **Auto**                              | 仅当使用了网络 API 时才会添加互联网访问权限。                                                                                                                                                                                                                                                                                                  |
| **Require**                           | 始终添加互联网访问权限。                                                                                                                                                                                                                                                                                                               |
| **Write Permission**                  | 选择是否启用对外部存储（例如 SD 卡）的写访问权限，并为 Android 应用程序清单添加相应的权限。对于开发版，默认设置为 External(SDCard)。                                                                                                                                                                                                                                          |
| **Internal**                          | 仅授予对内部存储的写入权限。                                                                                                                                                                                                                                                                                                             |
| **External(SDCard)**                  | 启用对外部存储的写入权限。                                                                                                                                                                                                                                                                                                              |
| **Filter Touches When Obscured**      | 启用此选项可忽略另一个可见窗口覆盖 Unity 应用程序时收到的触摸操作。这是为了防止点击劫持。                                                                                                                                                                                                                                                                           |
| **Sustained Performance Mode**        | 启用此选项可在较长时间内设置可预测且一致的设备性能级别，而无需考虑热节流。启用此设置时，整体性能可能会降低。基于 \[Android Sustained Performance API] ([https://developer.android.com/about/versions/nougat/android-7.0.html#sustained\_performance\_api)。](https://developer.android.com/about/versions/nougat/android-7.0.html#sustained_performance_api\)。)                     |
| **Maximum Java Heap Size**            | 设置用户可以构建的最大 Java 堆大小（以兆字节为单位）。默认为 4096。                                                                                                                                                                                                                                                                                    |
| **Low Accuracy Location**             | 启用此选项可改用 Android 位置 API 提供的低精度值。                                                                                                                                                                                                                                                                                           |
| **Predictive Back Gesture Support**   | 启用此选项，以使用 Android 的 [OnBackInvokedCallback](https://developer.android.com/guide/navigation/predictive-back-gesture) 来处理 Android 13 及更高版本上的返回事件。                                                                                                                                                                            |
| **Android TV Compatibility**          | 启用此选项可将应用程序标记为兼容 Android TV。                                                                                                                                                                                                                                                                                               |
| **Android Game**                      | 启用此选项可将输出包 (APK) 标记为游戏而非常规应用程序。**注意**：仅当 **Android TV Compatibility&#x20;**&#x8BBE;置为真 (true) 时，此属性才可见。                                                                                                                                                                                                                    |
| **Android Gamepad Support Level**     | 选择应用程序为游戏手柄提供的支持程度。**注意**：仅当 **Android TV Compatibility** 设置为真 (true) 时，此属性才可见。                                                                                                                                                                                                                                            |
| **与 D-Pad 配合使用**                      | 应用程序使用数字方向键即可完全运行。无需游戏手柄。                                                                                                                                                                                                                                                                                                  |
| **支持游戏手柄**                            | 应用程序可与游戏手柄配合使用，但游戏手柄并非必需。                                                                                                                                                                                                                                                                                                  |
| **需要游戏手柄**                            | 应用程序需要使用游戏手柄。                                                                                                                                                                                                                                                                                                              |
| **Warn about App Bundle size**        | 启用此选项可以在 [Android App Bundle](https://developer.android.com/platform/technology/app-bundle) 超过特定阈值时收到警告。默认情况下会选择此选项，且仅当在 [构建设置](/engine/6000.0/manual/platform-specific/android/building-and-delivering/build-settings.md) 将构建类型 (Build Type) 选择为**发布 (Release)** 且启用了 **Build App Bundle (Google Play)** 选项时，才能配置此选项。     |
| **App Bundle size threshold**         | 输入以 Mb 为单位的大小。当 App Bundle 超过此大小时，Unity 会显示警告，并建议根据 [Google Play 最大大小限制](https://support.google.com/googleplay/android-developer/answer/9859372#size_limits) 对生成的发布版 App Bundle 执行完整大小验证。                                                                                                                                  |
| **Warn about Symbols size**           | 启用此选项可以在 [Android App Bundle](https://developer.android.com/platform/technology/app-bundle) 内的符号压缩包大小或嵌入符号超过特定阈值时收到警告。默认情况下会选择此选项，仅当在 [构建设置 (Build settings)](/engine/6000.0/manual/platform-specific/android/building-and-delivering/build-settings.md) 中将**调试符号 (Debug Symbols) 设置为公共/调试 (Public/Debugging)** 时，才能配置此选项。 |
| **Symbols size threshold**            | 输入以 Mb 为单位的大小。当您的符号包超过此大小时，Unity 会显示警告。                                                                                                                                                                                                                                                                                    |
| **Application Entry Point**           | 为应用程序生成的应用程序入口点。有关更多信息，请参阅 [Android 应用程序入口点](/engine/6000.0/manual/platform-specific/android/developing/application-entries.md)。                                                                                                                                                                                           |
| **部分**                                | 生成 [Activity 应用程序入口点](/engine/6000.0/manual/platform-specific/android/developing/application-entries/activity.md)。                                                                                                                                                                                                         |
| **GameActivity**                      | 生成 [GameActivity 应用程序入口点](/engine/6000.0/manual/platform-specific/android/developing/application-entries/game-activity.md)。                                                                                                                                                                                                |
| **Active Input Handling**             | 选择处理用户输入的方式。                                                                                                                                                                                                                                                                                                               |
| **Input Manager (Old)**               | 使用传统的 [Input](/engine/6000.0/manual/working-in-unity/input/legacy/class-input-manager.md) 设置。                                                                                                                                                                                                                              |
| **Input System Package (New)**        | 使用 [输入](/engine/6000.0/script-reference/unity-engine/input.md) 系统。此选项要求安装 [InputSystem 包](https://github.com/Unity-Technologies/InputSystem)。                                                                                                                                                                              |
| **Both**                              | 同时使用两个系统。**注意**：Android 不再支持此选项。                                                                                                                                                                                                                                                                                           |

#### API 兼容性级别 (API Compatibility Level)##api-compatibility-level

可为所有目标选择 mono API 兼容性级别。有时，第三方 .NET 库会使用 .NET 兼容性级别之外的功能。为了解在这种情况下可能发生的问题以及如何以最佳方案修复问题，请尝试以下建议：

1. 安装适用于 Windows 的 [ILSpy](https://www.microsoft.com/en-us/p/ilspy/9mxfbkfvsq13?cid=msft_web_chart\&activetab=pivot:overviewtab)。
2. 将遇到问题的 API 兼容性级别的 .NET 程序集拖入 ILSpy。这些可以在 `Frameworks/Mono/lib/mono/YOURSUBSET/` 下找到。
3. 拖入第三方程序集。
4. 右键单击第三方程序集并选择 **Analyze**。
5. 在分析报告中，检查 **Depends on** 部分。若第三方程序集所依赖的内容在你所选的.NET 兼容性级别中不可用，这些内容将以红色字体显示

### 着色器设置 (Shader Settings)##configuration

| **属性** | **描述** |
| ------ | ------ |

### 着色器变体加载设置 (Shader Variant Loading Settings)##android-application-configuration

使用这些设置可以控制着色器在运行时的内存使用量。

| **属性**                      | **描述**                                                                                                                                                                                                        |
| --------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Default chunk size (MB)** | 设置 Unity 在构建的应用程序中为所有平台存储的压缩着色器变体数据块的最大大小。默认值为 `16`。有关更多信息，请参阅[着色器加载](/engine/6000.0/manual/materials-and-shaders/shaders/shader-troubleshooting/shader-reduce-stalling/shader-loading.md.md#dynamicloading)。 |
| **Default chunk count**     | 设置 Unity 在所有平台上保留在内存中的解压缩块数量的默认限制。默认值为 `0`，表示无限制。                                                                                                                                                             |
| **Override**                | 启用此选项可为此构建目标覆盖\_\_默认块大小\_\_和\_\_默认块数量\_\_的设置。                                                                                                                                                                 |
| **Chunk size (MB)**         | 覆盖此构建目标上的\_\_默认块大小 (MB)\_\_ 值。                                                                                                                                                                                |
| **Chunk count**             | 覆盖此构建目标上的\_\_默认块数量\_\_值。                                                                                                                                                                                      |

### 脚本编译 (Script Compilation)##shader-settings


**Android 平台的脚本编制设置:**
![](/api/media?file=/engine/6000.0/media/images/ProjectSettingsScriptCompilation.png)

| **属性**                       | **描述**                                                                                                                                                                                                    |
| ---------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Scripting Define Symbols** | 设置自定义编译标志。有关更多详细信息，请参阅[平台相关的编译](/engine/6000.0/manual/platform-dependent-compilation.md.md)。                                                                                                              |
| **其他编译器参数**                  | 向此列表添加条目，以将附加参数传递给 Roslyn 编译器。每个附加参数使用一个新条目。要创建新条目，请点击 **Add** (**+**)。要删除条目，请点击 **Remove**（**-**）。添加完所有所需参数后，点击 **Apply**，以便在后续编译中包含这些附加参数。点击 **Revert** 可将此列表重置为最新应用的状态。                                |
| **禁止常见警告**                   | 指示是否显示 C# 警告 [CS0169](https://docs.microsoft.com/en-us/dotnet/csharp/misc/cs0169) 和 [CS0649](https://docs.microsoft.com/en-us/dotnet/csharp/misc/CS0649)。                                                 |
| **Allow 'unsafe' Code**      | 启用对预定义程序集（例如，`Assembly-CSharp.dll`）中[“不安全”C# 代码](https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/keywords/unsafe)的编译支持。对于程序集定义文件 (`.asmdef`)，请选中其中一个 `.asmdef` 文件，并在打开的检视面板窗口中启用该选项。    |
| **使用确定性编译**                  | 指定是否禁用 -deterministic C# 编译标志。启用此设置后，每次编译生成的程序集在字节级别上完全一致。有关更多信息，请参阅 [C# 编译器选项：控制代码生成](https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/compiler-options/deterministic-compiler-option)。 |

### 优化##shader-variant-loading-settings

{ /*  This table uses single sourcing. For information on how to edit it, see https://confluence.unity3d.com/display/DOCS/Single-sourcing+table+rows.  */ }

| **属性** | **描述** |
| ------ | ------ |

### 堆栈跟踪 (Stack Trace)##script-compilation

根据所需的日志记录类型，启用与每种日志类型（**Error**、**Assert**、**Warning**、**Log** 和 **Exception**）对应的选项来选择首选的堆栈跟踪方法。


**Android 平台的日志记录设置:**
![](/api/media?file=/engine/6000.0/media/images/PlayerSetPCOther-Logging.png)

| **属性**         | **描述**       |
| -------------- | ------------ |
| **None**       | 从未记录任何日志。    |
| **ScriptOnly** | 仅在运行脚本时记录日志。 |
| **Full**       | 始终记录日志。      |

有关更多信息，请参阅[堆栈跟踪日志记录](/engine/6000.0/manual/scripting/debugging-and-diagnostics/stack-trace.md)。

### 旧版 (Legacy)##optimization

启用 **Clamp BlendShapes (Deprecated)** 选项可在 [SkinnedMeshRenderers](/engine/6000.0/manual/working-in-unity/working-with-gameobjects/mesh/components-reference/class-skinned-mesh-renderer.md) 中钳制混合形状权重的范围。

## 发布设置 (Publishing Settings)##publishing-settings

使用以下 Publishing Settings 可配置 Unity 构建 Android 应用程序的方式。

* [Project Keystore](#projectkeystore)
* [Project Key](#projectkey)
* [Build](#build)
* [Minify](#minify)
* [Split Application Binary](#splitapplicationbinary)
* [Report Dependencies in App Bundle](#reportDependencies)


**Android 发布面板:**
![](/api/media?file=/engine/6000.0/media/images/Android-publishing-page.png)

**注意**：出于安全原因，Unity 不会保存密钥库或项目密钥密码。

使用 Keystore Manager 窗口可创建、配置和加载密钥和密钥库。可以从 Keystore Manager 或主 Android 发布面板加载现有密钥库和密钥。如果选择从 Keystore Manager 内部加载这些内容，则 Unity 会自动填充 Project Keystore 和 Project Key 字段。有关更多信息，请参阅 [Keystore Manager](/engine/6000.0/manual/platform-specific/android/getting-started/keystore/manager.md) 上的文档。

### 项目密钥库 (Project Keystore)##stack-trace

密钥库是用于保存签名密钥来实现应用程序安全性的容器。有关详细信息，请参阅 Android 开发者文档：[Android 密钥库系统。](https://developer.android.com/training/articles/keystore)

使用 **Project Keystore** 设置可选择用于打开的项目的密钥库。加载一个密钥库时，Unity 会加载该密钥库中的所有密钥。若要在打开的项目中加载和使用现有密钥库，请执行以下操作：

1. 启用 **Custom Keystore**。
2. 打开 **Select** 下拉列表，选择 **Browse**，然后从文件系统中选择密钥库。
3. 输入您的**密钥库密码**。

如果没有现有密钥库，请将 **Custom Keystore** 保留为禁用状态。

Unity 使用调试密钥库对应用程序进行签名。调试密钥库是一种工作密钥库。通过它可以对应用程序进行签名并在本地进行测试。但是，应用商店会拒绝以这种方式签名的应用程序。这是因为应用商店无法使用调试密钥库验证应用程序的有效性和所有权。

| **属性**              | **描述**                                                                                                                                                                                                                |
| ------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Custom Keystore** | 启用 **Custom Keystore** 可加载和使用现有密钥库。                                                                                                                                                                                   |
| **Select**          | 启用了 **Custom Keystore** 时，使用此设置可选择要使用的密钥库。**Select** 下拉列表中的分区下的密钥库存储在预定义专用位置中。有关更多详细信息，请参阅[选择密钥库位置](/engine/6000.0/manual/platform-specific/android/getting-started/keystore/create.md#choose-the-keystore-location)。 |
| **Path**            | 无需输入密钥库路径。Unity 会基于所选择的密钥库提供此路径。                                                                                                                                                                                      |
| **Password**        | 输入密钥库密码以加载所选的密钥库。                                                                                                                                                                                                     |

### 项目密钥 (Project Key)##legacy

加载一个密钥库时，Unity 会加载该密钥库中的所有密钥。使用 **Project Key** 设置可从该密钥库中选择一个密钥以用作打开的项目的活动密钥。

| **属性**       | **描述**         |
| ------------ | -------------- |
| **Alias**    | 选择要用于打开的项目的密钥。 |
| **Password** | 输入密钥密码。        |

### 构建 (Build)##project-keystore

默认情况下，Unity 使用随 Unity 安装提供的清单文件、Gradle 模板和 Proguard 文件构建应用程序。使用 Android Publishing Settings 的 **Build** 部分可更改这些内容。

若要使用自定义清单文件、Gradle 模板或 Proguard 文件：

1. 启用相应的复选框。Unity 会在项目中创建一个默认文件，文件位置会出现在复选框下方。
2. 打开新文件并进行更改。
3. 保存对此文件的更改。Unity 下次构建应用程序时会自动使用保存到此文件的更改。

Build 部分中的设置仅适用于当前项目的构建过程。

{ /*  Temporarily removing the below setting from the table as it is now hidden in the Editor until compatibility issues are resolved.
  |**Upgrade templates to C#**|Opens the [Android Templates Upgrader window](android-templates-upgrader-window) which you can use to upgrade your custom Gradle template files to use the [Android Project Configuration Manager](android-modify-gradle-project-files-methods#agp).| 
   */ }

| **属性**                                | **描述**                                                                                                                                                                                                                     |
| ------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Custom Main Manifest**              | Android `LibraryManifest.xml` 文件的可自定义版本。此文件包含有关 Android 应用程序的重要元数据。有关主/Unity 库清单职责的更多信息，请参阅 [Unity 库清单](/engine/6000.0/manual/platform-specific/android/introducing/library-manifest.md)。                                  |
| **Custom Launcher Manifest**          | Android `LauncherManifest.xml` 文件的可自定义版本。此文件包含有关 Android 应用程序启动器的重要元数据。有关 Unity Launcher Manifest 职责的更多信息，请参阅 [Unity Launcher Manifest](/engine/6000.0/manual/platform-specific/android/introducing/launcher-manifest.md)。 |
| **Custom Main Gradle Template**       | `mainTemplate.gradle` 文件的可自定义版本。此文件包含有关如何将 Android 应用程序构建为库的信息。请参阅有关 [Gradle 项目文件](/engine/6000.0/manual/platform-specific/android/introducing/gradle-overview.md#gradle-project-files)的文档以了解更多信息。                         |
| **Custom Launcher Gradle Template**   | `launcherTemplate.gradle` 文件的可自定义版本。此文件包含有关如何构建 Android 应用程序的说明。请参阅有关 [Gradle 项目文件](/engine/6000.0/manual/platform-specific/android/introducing/gradle-overview.md#gradle-project-files)的文档以了解更多信息。                        |
| **Custom Base Gradle Template**       | `baseProjectTemplate.gradle` 文件的可自定义版本。此文件包含在所有其他模板与 Gradle 项目之间共享的配置。请参阅有关 [Gradle 项目文件](/engine/6000.0/manual/platform-specific/android/introducing/gradle-overview.md#gradle-project-files)的文档以了解更多信息。                  |
| **Custom Gradle Properties Template** | `gradle.properties` 文件的可自定义版本。此文件包含 Gradle 构建环境的配置设置。这些信息包括：• JVM（Java 虚拟机）内存配置。• 允许 Gradle 使用多个 JVM 进行构建的属性。• 用于选择要进行缩小的工具的属性。• 在构建应用程序捆绑包时不压缩原生库的属性。                                                                     |
| **Custom Gradle Settings Template**   | `settingsTemplate.gradle` 文件的可自定义版本。此文件包含工件代码仓库的声明，用于解析应用程序所需的外部依赖关系。                                                                                                                                                      |
| **Custom Proguard File**              | proguard.txt 文件的可自定义版本。此文件包含缩小过程的配置设置。如果缩小会移除一些应该保留的 Java 代码，则应添加规则以将该代码保留在此文件中。请参阅有关 [Minification](#minify) 的文档以了解更多信息。                                                                                                  |

### 缩小 (Minify)##build

缩小是一种缩减、混淆和优化应用程序代码的过程。它可以减小代码大小并使代码更难以反汇编。使用 Minify 设置可定义 Unity 应何时以及如何将缩小应用于构建。

在大多数情况下，仅将缩小应用于发布构建（而不是调试构建）是一种很好的做法。这是因为缩小需要时间，可能会使构建速度变慢。由于代码经过优化，它还会使调试变得更加复杂。

**注意**：如果通过反射引用 Java 代码，则缩小过程 (R8/Proguard) 无法推断代码正在使用并会剥离该代码。您可以使用 [Custom Proguard File](#customproguard) 来保留所需的代码。

Minify 部分中的设置仅适用于当前项目的构建过程。

| **属性**      | **描述**                              |
| ----------- | ----------------------------------- |
| **Release** | 如果希望 Unity 在发布构建中缩小应用程序的代码，请启用此复选框。 |
| **Debug**   | 如果希望 Unity 在调试构建中缩小应用程序的代码，请启用此复选框。 |

### Split Application Binary##minify

启用 **Split Application Binary** 选项可将输出包拆分为主包 (APK) 和扩展包 (OBB) 包。如果要发布大于 100 MB 的应用程序，则 Google Play 应用商店需要此功能。

### Report Dependencies in App Bundle##split-application-binary

如果您计划将应用程序构建为 Google Play 的 Android App Bundle (AAB)，请启用此选项以在 App Bundle 中包含有关依赖关系的信息。有关更多信息，请参阅 [Report App Dependencies](/engine/6000.0/manual/platform-specific/android/building-and-delivering/distribution/google-play.md#reportappdependencies) 部分。

**注意**：仅当在 [Android Build Settings](/engine/6000.0/manual/platform-specific/android/building-and-delivering/build-settings.md) 中启用 **Build App Bundle (Google Play)** 选项时，才能与此设置交互。

***

*
*
*
* 在 2018.2 中添加了
*
*
*
*
*
*
*
*
