包含此页的版本:
不含此页的版本:
本页详细介绍了Android平台的播放器设置。有关常规播放器设置的说明,请参阅玩家设置设置,可让您为 Unity 构建的最终游戏设置各种特定于玩家的选项。更多信息
请参阅术语表.
属性的文档根据播放器UI中各自的部分进行分组:
使用“图标”部分指定图标以表示设备上的应用程序。
| 设置 | 描述 |
|---|---|
| 适应的 | 指定各种大小的纹理,以表示您在搭载 Android 8.0(API 级别 26)或更高版本的设备上的应用。 |
| 圆 | 指定各种大小的纹理,以表示您在搭载 Android 7.1(API 级别 25)或更高版本的设备上的应用。 注意:圆形图标已弃用,并将在 Unity 的未来版本中删除。请改用自适应图标。要在运行 API 26 及更高版本的设备上显示应用程序的圆形图标,请使用自适应图标。 |
| 遗产 | 指定各种大小的纹理,以表示运行 Android 7.1(API 级别 25)之前版本的设备上的应用。 注意:旧版图标已弃用,并将在 Unity 的未来版本中删除。请改用自适应图标。 |
使用“分辨率和演示”部分中的以下设置来自定义屏幕外观的各个方面。
使用“分辨率”部分自定义屏幕模式和默认大小。
| 财产 | 描述 |
|---|---|
| 无焦点运行 | 启用此属性可使应用程序保持运行,即使它不在焦点中但可见,例如在支持分屏模式的设备上也是如此。禁用后,应用程序将暂停但保持可见。 |
| 全屏模式 | 指定窗口在设备上的显示方式。这将在启动时设置默认窗口模式。
|
| 可调整大小的活动 | 指示用户是否可以调整应用程序的大小。 此设置可在 Android 手机和平板电脑上的应用程序中启用多窗口功能。有关更多信息,请参阅 Google 的开发者文档。 |
| 最小窗口宽度(Minimum Window Width) | 应用程序窗口的最小宽度(以像素为单位)。 |
| 最小窗口高度(Minimum Window Height) | 应用程序窗口的最小高度(以像素为单位)。 |
| 默认窗口宽度(Default Window Width) | 应用程序窗口的默认宽度(以像素为单位)。仅当 全屏模式(Fullscreen Mode) 设置为 窗口化(Windowed) 时,此选项才可用。 |
| 默认窗口高度(Default Window Height) | 应用程序窗口的默认高度(以像素为单位)。仅当 全屏模式(Fullscreen Mode) 设置为 窗口化(Windowed) 时,此选项才可用。 |
| 隐藏导航栏 | 指示是否隐藏屏幕底部显示的导航栏。 注意:禁用此设置可防止您的应用程序自动进入全屏模式。 |
| 渲染安全区域之外 | 启用此选项以允许应用程序使用所有可用的屏幕空间进行渲染,包括被剪切(有缺口)的显示区域。有关更多信息,请参阅 Android 的显示切口支持文档。此设置的行为因 Android 版本而异,如下表所示。
|
| 优化的帧节奏 | 启用此选项可允许 Unity 均匀分布帧,以减少帧速率的变化并创建更流畅的体验。 |
使用 分辨率缩放(Resolution Scaling) 部分自定义与屏幕分辨率缩放相关的设置。使用低于设备原始分辨率的分辨率可以提高性能和电池寿命。
| 财产 | 描述 |
|---|---|
| 分辨率缩放模式 | 指定应用程序是否以及如何缩放其分辨率。您可以将缩放设置为等于或低于本机屏幕分辨率。使用较低的分辨率可以提高性能和电池寿命。
|
| 目标 DPI | 应用程序的分辨率。如果设备的本机屏幕 DPI 高于此值,Unity 会降低应用程序的分辨率以匹配此设置。Unity 使用以下方法计算比例: min(Target DPI * Factor / Screen DPI, 1),其中 Factor 是 Quality 设置中的 Resolution Scaling Fixed DPI Factor。 【注】仅当将“分辨率缩放模式”设定为“固定 DPI”时,才会出现此选项。 |
| 在调整窗口大小时重置分辨率 | 指示在本机窗口大小更改时是否将屏幕分辨率设置为新的本机窗口大小。如果将 Resolution Scaling Mode 设置为 Fixed DPI,Unity 会根据 Fixed DPI 属性重新计算分辨率。 |
| Blit 类型 | 控制是否使用blit将最终图像渲染到屏幕上。使用 blit 与大多数设备兼容,但通常比不使用 blit 慢。
|
使用支持纵横比图像比例尺寸的关系,例如其宽度和高度。
请参阅术语表部分以自定义与要支持的设备纵横比相关的设置。
| 财产 | 描述 |
|---|---|
| 纵横比模式(Aspect Ratio Mode) | 指定应用程序支持的最大纵横比。如果设备的纵横比大于此纵横比,Unity 会将此纵横比用于应用程序,并添加黑条,以便应用程序不会拉伸。
|
| 最低 | 自定义最小宽高比。此值必须小于“最大值”。 注: 仅当将“宽高比模式”设置为“自定义”时,才会显示此设置。 |
| 最大 | 自定义最大宽高比。此值必须大于“最小值”。 【注】仅当将“宽高比模式”设定为“自定义”时,才会显示此设置。 |
| 财产 | 描述 |
|---|---|
| 显示加载指示器 | 指定加载指示器的显示方式。
|
| 显示选项 | 定义 Android 显示设置,用于确定应用程序在运行时如何在 Android 设备上呈现。
|
| 财产 | 描述 |
|---|---|
| 默认方向 | 在设备屏幕中指定应用程序窗口的方向。 注意:Unity 在 Android、iOS 和 UWP 之间共享你为此设置设置的值。
|
| 自动旋转行为(Auto Rotation Behavior) | 指定应用程序窗口如何根据设备的旋转传感器和方向设置调整其方向,当默认方向设置为自动旋转时。 注: 仅当将“默认方向”设置为“自动旋转”时,此属性才可见。默认情况下,此属性设置为 User。
|
使用 自动旋转允许的方向(Allowed Orientations for Auto Rotation) 部分指定将默认方向设置为自动旋转时应用程序支持的方向。例如,这对于将应用程序锁定为横向,但允许用户在横向左和横向右之间进行切换非常有用。
注意:仅当您将“方向”部分中的“默认方向”设置为“自动旋转”时,此部分才可见。
| 财产 | 描述 |
|---|---|
| 肖像 | 允许纵向,使应用程序底部与屏幕底部对齐。 |
| 颠倒肖像 | 允许纵向,应用程序底部与屏幕顶部对齐。 |
| 景观右 | 允许横向,应用程序的右侧与屏幕顶部对齐。 |
| 左侧景观 | 允许横向,应用程序的左侧与屏幕顶部对齐。 |
| 财产 | 描述 |
|---|---|
| 使用 32 位显示缓冲区 | 指示显示缓冲区是否保存 32 位颜色值而不是 16 位颜色值。如果您看到条带,或者需要在后期处理效果中使用 alpha 值,请启用此设置。一些后期处理效果需要这样做,因为它们创建了渲染纹理(Render Textures)一种特殊类型的纹理,在运行时创建和更新。要使用它们,请先创建一个新的渲染纹理,并指定要渲染到其中的摄像机之一。然后,你可以在材质中使用渲染纹理,就像使用常规纹理一样。更多信息 请参阅术语表与显示缓冲区相同的格式。 |
| 禁用深度和模板 | 禁用深度和模具缓冲区。 |
| 通过原生UI渲染 | 强制应用程序在本机 UI 之上呈现。要使此设置生效,请将摄像机的 清除标志(Clear Flags) 设置为使用alpha值小于1的纯色。 注意:当应用程序处于分屏模式时,不会呈现应用程序窗口后面的本机界面。 |
使用虚拟现实初始图像设置选择自定义初始图像虚拟现实虚拟现实 (VR) 使用耳机和运动跟踪,让用户沉浸在逼真的图像和声音的人工 3D 世界中。更多信息
请参阅术语表显示。有关常见初始屏幕设置的信息,请参阅初始屏幕。
在常见的启动画面设置下,你可以设置特定于Android的静态启动图像。
| 财产 | 描述 |
|---|---|
| 图像 | 指定应用程序用于 Android 初始屏幕的纹理。初始屏幕图像的标准大小为 320x480。 |
| 缩放 | 指定如何缩放初始图像以适应设备的屏幕。
|
此部分允许您自定义一系列选项,这些选项分为以下组:
使用这些设置可以自定义 Unity 为 Android 平台渲染游戏的方式。
| 财产 | 描述 |
|---|---|
| 色彩空间 | 选择要用于渲染的色彩空间。有关更多信息,请参阅色彩空间。 |
| 自动图形 API |
禁用此选项以手动拾取和重新排序图形 API。默认情况下,此选项处于启用状态,并且 Unity 会尝试使用 Vulkan。如果设备不支持 Vulkan,Unity 会回退到 GLES3.2、GLES3.1 或 GLES3.0。 重要提示:仅当您启用了 Auto Graphics API 或图形 API 包含 OpenGLES3 时,Unity 才会将 GLES3.1/GLES3.1+AEP/GLES3.2 要求添加到您的 Android 应用清单中。 |
| 图形 API | 指定应用程序支持的图形 API。Unity 首先尝试使用列表顶部的图形 API,如果设备不支持,Unity 会回退到列表中的下一个图形 API。
|
| 需要 ES3.1 | 指示是否要求最低 OpenGL ES 3 次要版本为 3.1。仅当您启用自动图形 API 或图形 API 包含 OpenGLES3 时, 此属性才可见。 |
| 需要 ES3.1+AEP | 指示是否要求最低 OpenGL ES 3 次要版本为 3.1+AEP。仅当您启用自动图形 API 或图形 API 包含 OpenGLES3 时, 此属性才可见。 |
| 需要 ES3.2 | 指示是否要求最低 OpenGL ES 3 次要版本为 3.2。仅当您启用自动图形 API 或图形 API 包含 OpenGLES3 时, 此属性才可见。 |
| 色域 | 您可以添加或删除色域以用于渲染。单击加号 (+) 图标可查看可用色域列表。色域定义了给定设备(例如显示器或屏幕)可用的可能颜色范围。sRGB 色域是默认(和必需)色域。 |
| 多线程渲染 | 启用此选项可将图形 API 调用从 Unity 的主线程移动到单独的工作线程。这有助于提高主线程上 CPU 使用率较高的应用程序的性能。 |
| 静态批处理 | 启用此选项以使用静态批处理Unity 用于在屏幕上绘制游戏对象的一种技术,用于将静态(非移动)游戏对象组合成大网格,并以更快的方式呈现它们。更多信息 请参阅术语表. |
| 动态批处理 | 用动态批处理 (Dynamic Batching)一种自动 Unity 过程,它尝试将多个网格体渲染为单个网格体,以优化图形性能。该技术转换 CPU 上的所有游戏对象顶点,并将许多相似的顶点组合在一起。更多信息 请参阅术语表(默认启用)。 注意:当可编写脚本的渲染管线处于活动状态时,动态批处理不起作用,因此仅当 可编写脚本的渲染管线资产图形(Scriptable Render Pipeline Asset Graphics) 设置为空时,此设置才可见。 |
| Sprite批处理阈值(Sprite Batching Threshold) | 控制批处理时使用的最大顶点阈值。 |
| GPU蒙皮 | 通过着色器计算网格蒙皮和混合 GPU 上的形状,以释放 CPU 资源并提高性能。
|
| 图形作业(实验性) | 启用此选项可指示 Unity 将图形任务(渲染循环)卸载到在其他 CPU 内核上运行的工作线程。这是为了减少花费在Camera.Render在主线程上,这通常是一个瓶颈。注意:此功能是实验性的。它可能无法提高项目的性能,并且可能会引入新的崩溃。 |
| 图形作业模式 | 指定要在应用程序中使用的图形作业模式。有关 Unity 中的作业的信息,请参阅作业系统概述。
|
| 纹理压缩格式 | 在 ASTC、ETC2 和 ETC(RGB 为 ETC1,RGBA 为 ETC2)、DXTC 和 DXT + RGTC(BC4、BC5)之间进行选择。有关如何选择正确格式的更多信息,请参阅纹理压缩格式概述。可以将多种纹理压缩格式添加到此列表中以支持纹理压缩目标,但不能同时在此列表中同时包含 DXT 和 DXT + RGTC(BC4、BC5)。如果启用纹理压缩定位,Unity 还会启用拆分应用程序二进制文件。 请参阅纹理压缩设置,了解有关它如何与构建设置中的纹理压缩设置交互的更多详细信息。 注意:如果您将应用程序导出或构建为 APK,Unity 仅使用此列表中的第一个纹理压缩格式。 |
| 法线贴图编码 | 选择 XYZ 或 DXT5nm 样式以设置法线贴图编码。此设置会影响用于法线贴图的编码方案和压缩格式。DXT5nm 样式的法线贴图质量更高,但在着色器中解码的成本更高。 |
| 光照贴图编码 | 定义光照贴图的编码方案和压缩格式。 您可以选择低质量、正常质量或高质量 |
| HDR立方体贴图编码 | 定义HDR立方体贴图的编码方案和压缩格式。 您可以选择低质量、正常质量或高质量。有关更多信息,请参阅光照贴图:技术信息。 |
| 光照贴图流送 | 启用此选项可将Mipmap流送用于光照贴图。Unity 在生成所有光照贴图时将此设置应用于它们。 注意:要使用此设置,必须启用 纹理Mipmap流送质量(Texture Mipmap Streaming Quality) 设置。 |
| 流式处理优先级 | 设置Mipmap流送系统中所有光照贴图的优先级。Unity 在生成所有光照贴图时将此设置应用于它们。 正数具有更高的优先级。有效值范围为 -128自127. |
| 帧时序统计 | 启用此属性以使用 FrameTimingManager API 收集 CPU 和 GPU 帧时序数据。如果禁用此属性,动态分辨率(Dynamic Resolution)摄像机设置,允许你动态缩放单个渲染目标,以减少GPU上的工作负载。更多信息 请参阅术语表相机设置无法使用这些数据来动态调整分辨率以减少 GPU 工作负载。 |
| OpenGL:性能分析器GPU记录器 | 指示在使用 OpenGL 渲染时是否启用探查器记录器。此选项始终对其他渲染API启用,但由于帧时序统计和GPU性能分析器存在潜在兼容性问题,在OpenGL上是可选的。 |
| 允许HDR显示输出 | 在应用程序运行时启用 HDR 模式输出。这仅适用于支持此功能的显示器。如果显示器不支持 HDR 模式,则游戏将以标准模式运行。 |
| 使用 HDR 显示输出 | 检查主显示器是否支持 HDR,如果支持 HDR,则在应用程序启动时切换到 HDR 输出。 注意:仅当“允许 HDR 显示输出”处于活动状态时,此选项才可用。 |
| 虚拟纹理(实验性) | 指示是否启用虚拟纹理。 注意:虚拟纹理与 Android 不兼容。 |
| 360度立体捕捉 | 指示 Unity 是否可以捕获立体 360 度图像和视频。 注意:360 度立体拍摄与 Android 不兼容。 |
| 加载/存储作调试模式 | 突出显示可能导致移动平台上渲染问题的未定义像素。这会影响 Unity 编辑器的 游戏(Game) 视图,如果你在 Build Profiles 窗口的 Platform Settings 部分选择 Development Build,则会影响你构建的应用程序。有关更多信息,请参阅 LoadStoreActionDebugModeSettings。 |
| 仅编辑器 | 指示加载/存储作调试模式是否仅在 Unity 编辑器中运行。 注意:仅当 加载/存储作调试模式(Load/Store Action Debug Mode) 设置为 true 时,此属性才可见。 |
| 财产 | 描述 |
|---|---|
| SRGB 写入模式 | 启用此选项以允许Graphics.SetSRGBWrite()渲染器在运行时切换 sRGB 写入模式。也就是说,如果要暂时关闭线性到 sRGB 写入颜色转换,可以使用此属性来实现此目的。启用此功能会对基于移动图块的 GPU 的性能产生负面影响;因此,请勿为移动设备启用此功能。 |
| 交换链缓冲区数量 | 将此选项设置为 2 以进行双缓冲,或将此选项设置为 3 以进行三重缓冲以与 Vulkan 渲染器一起使用。此设置可能有助于解决某些平台上的延迟问题,但在大多数情况下,您不应将其从默认值 3 更改。双缓冲可能会对性能产生负面影响。请勿在 Android 上使用此设置。 |
| 尽可能晚地获取交换链映像 | 如果启用,Vulkan 会延迟获取后台缓冲区,直到将帧渲染为屏幕外图像之后。Vulkan 使用暂存图像来实现这一点。启用此设置会导致在显示后台缓冲区时出现额外的 blit。此设置与双缓冲相结合,可以提高性能。但是,它也可能导致性能问题,因为额外的 blit 会占用带宽。 |
| 回收命令缓冲区 | 指示在 Unity 执行 CommandBuffer 后是回收还是释放它们。 |
| 在渲染期间应用显示旋转 | 启用此选项以在显示器的本机方向执行所有渲染。这在许多设备上都有性能优势。有关更多信息,请参阅有关帧缓冲区方向的文档。 |
| 拒绝过滤器列表 | 指定条件以确定哪些 Android 设备在运行 Unity 应用程序时不应使用 Vulkan API。有关更多信息,请参阅有关配置 Vulkan API 使用情况的文档。有关用于定义拒绝标准的参数的信息,请参阅 Vulkan 设备过滤资产参考。 重要提示: 拒绝过滤器列表属性已过时,缺省情况下在新项目中不再可用。仅当升级以前使用这些属性的现有项目时,此属性才在播放器设置中可用。建议使用 Vulkan 设备过滤资产,它取代了 拒绝过滤器(Deny Filter) 列表。此资产提供了一个选项,用于导入现有项目的拒绝过滤器列表中定义的值。有关详细信息,请参阅导入旧版允许和拒绝筛选器列表值。 |
| 允许过滤器列表 | 指定条件以确定哪些 Android 设备在运行 Unity 应用程序时应始终使用 Vulkan 图形 API。有关更多信息,请参阅有关配置 Vulkan API 使用情况的文档。有关用于定义条件的参数的信息,请参阅 Vulkan 设备过滤资产参考。 重要提示: “允许过滤器列表”属性已过时,缺省情况下在新项目中不再可用。仅当升级以前使用这些属性的现有项目时,此属性才在播放器设置中可用。建议使用Vulkan设备过滤资产,它取代了 允许过滤器(Allow Filter) 列表。此资产提供了一个选项,用于导入现有项目的“允许过滤器”列表中定义的值。有关详细信息,请参阅导入旧版允许和拒绝筛选器列表值。 |
| Vulkan设备过滤资产 | 使用过滤器列表为 Android 设备指定条件,以定义以下内容:
笔记:
|
| 财产 | 描述 |
|---|---|
| 覆盖默认包名称 | 指示是否重写应用程序的默认包名称。启用此属性还会启用以下属性。
|
| 版本 | 输入捆绑包的内部版本号,用于标识捆绑包的迭代(已发布或未发布)。该版本以包含用点分隔的数字的字符串的通用格式指定(例如,4.3.2)。(在 iOS 和 Android 之间共享。 |
| 捆绑版本代码 | 内部版本号。此数字仅用于确定一个版本是否比另一个版本更新,数字越高表示版本越新。这不是向用户显示的版本号;该编号由versionName属性。 该值必须设置为整数,例如“100”。您可以根据需要定义它,只要每个后续版本都有较大的数字即可。例如,它可以是内部版本号。或者,您可以通过在下 16 位和上 16 位中分别对“x”和“y”进行编码,将“x.y”格式的版本号转换为整数。或者,您可以简单地在每次发布新版本时将数字增加 1。 如果启用了按目标架构拆分 APK,请 将此数字保持在 100000 以下。每个 APK 必须有一个唯一的版本代码,因此 Unity 会在 ARMv7 的数字上添加 100000,ARM64 的数字增加 200000。 |
| 最低 API 级别 | 运行应用所需的最低 Android 版本(API 级别)。 |
| 目标 API 级别 | 要编译应用的目标 Android 版本(API 级别)。 |
| 财产 | 描述 |
|---|---|
| 脚本后端 | 选择要使用的脚本后端。脚本后端决定了 Unity 如何在项目中编译和执行 C# 代码。 |
| API 兼容性级别 | 选择可在项目中使用的 .NET API。此设置可能会影响与第三方库的兼容性。但是,它对特定于编辑器的代码(编辑器目录中的代码,或特定于编辑器的程序集定义中的代码)没有影响。 提示:如果第三方程序集遇到问题,可以尝试 API 兼容性级别部分中的建议。
|
| 编辑器程序集兼容性级别 | 选择要在编辑器程序集中使用的 .NET API。
|
| IL2CPP 代码生成 | 定义 Unity 如何管理 IL2CPP 代码生成。 注意:要使用它,请将 Scripting Backend 设置为 IL2CPP。 |
| C++编译器配置 | 选择编译 IL2CPP 生成的代码时使用的 C++ 编译器配置。
|
| IL2CPP 堆栈跟踪信息 | 选择要包含在堆栈跟踪中的信息。有关信息类型的更多详细信息,请参阅使用 IL2CPP 的托管堆栈跟踪。
|
| 使用增量 GC | 使用增量垃圾回收器,将垃圾回收分散到多个帧上,以减少与垃圾回收相关的帧持续时间峰值。有关详细信息,请参阅自动内存管理。 |
| 允许通过 HTTP 下载 | 指示是否允许通过 HTTP 下载内容。默认选项为“不允许”,因为推荐的协议是 HTTPS,这更安全。
|
| 将其他音频源静音 | 指示您的 Unity 应用程序是否停止在后台运行的应用程序中的音频。否则,来自后台应用程序的音频将继续与 Unity 应用程序一起播放。 |
| 目标架构 | 指定要面向的体系结构。
|
| 按目标架构拆分 APK | 启用此选项可为目标架构中选择的每个CPU架构创建单独的APK。这使得 Google Play 商店用户的下载大小更小。这主要是 Google Play 商店的功能,可能不适用于其他商店。有关更多详细信息,请参阅多个 APK 支持。 |
| 安装位置 | 指定设备上的应用安装位置(有关详细信息,请参阅有关安装位置的 Android 开发者文档。
|
| 存储位置 | 指定设备上的存储位置(有关详细信息,请参阅有关存储或缓存位置的 Android 开发者文档)
|
| 上网 | 选择是否始终添加网络 (INTERNET) 权限,即使您没有使用任何网络 API。默认情况下,对于开发版本设置为“需要”。
|
| 通过 HTTP/1.1 强制 UnityWebRequest | 启用此选项可强制 UnityWebRequest 使用 HTTP/1.1 协议而不是 HTTP/2 协议与 Web 服务器通信。默认情况下,此选项处于禁用状态,并且 UnityWebRequest 使用 HTTP/2。 |
| 写入权限 | 选择是否启用对外部存储(例如 SD 卡)的写入访问权限,并为 Android 应用清单添加相应的权限。默认情况下,对于开发版本设置为 External(SDCard)。
|
| 遮挡时的过滤触摸 | 启用此选项可丢弃在另一个可见窗口覆盖 Unity 应用程序时收到的触摸。这是为了防止窃听劫持。 |
| 持续性能模式 | 启用此选项可在较长时间内设置可预测且一致的设备性能级别,而无需热限制。启用此设置后,总体性能可能会降低。基于 Android Sustained Performance API。 |
| 最大 Java 堆大小 | 将 Java 堆的最大大小设置为用于构建的用户(以兆字节为单位)。默认为 4096。 |
| 定位精度低 | 启用此选项可改为将低准确度值与 Android 位置信息 API 一起使用。 |
| 预测性后退手势支持 | 启用此选项可使用 Android 的 OnBackInvokedCallback 处理 Android 13 及更高版本上的回溯事件。 |
| 应用类别 | 指定要构建的应用程序类型。对于将 androidIsGame 设置为 false 的现有 Unity 项目,默认情况下禁用此属性。启用后,从下拉列表中选择与应用程序的主要功能最匹配的类别。有关可用类别的更多信息,请参阅 Android 文档。 笔记:
|
| 类别名称 | 输入与 Android 定义的 appCategory 选项之一匹配的有效应用类别名称。不支持自定义类别名称或 Android 未定义的类别名称。 注意:仅当您将“应用类别”设置为“其他”时,此属性才可见。 |
| Android TV 兼容性 | 启用此选项可将应用程序标记为 Android TV 兼容。 |
| Android 游戏手柄支持级别 | 选择应用程序为游戏手柄提供的支持级别。 注意:仅当 Android TV 兼容性设置为 true 时,此属性才可见。
|
| 警告 App Bundle 大小 | 启用此选项可在 Android App Bundle 的大小超过特定阈值时收到警告。默认情况下,此选项处于选中状态,只有在选择“构建类型”作为“发布”并在构建设置中启用“构建应用包 (Google Play)”选项时,才能对其进行配置。
|
| 警告符号大小 | 启用此选项可在 Android App Bundle 中的符号 zip 包或嵌入符号的大小超过特定阈值时收到警告。默认情况下,此选项处于选中状态,只有在构建设置中将 调试符号(Debug Symbols) 设置为 公共/调试(Public/Debugging) 时,才能对其进行配置。
|
| 应用程序入口点 | 要为应用程序生成的应用程序入口点。有关详细信息,请参阅 Android 应用程序入口点。
|
| 主动输入处理 | 选择如何处理来自用户的输入。
|
您可以为所有目标选择单一 API 兼容性级别。有时,第三方 .NET 库使用超出 .NET 兼容性级别的功能。要了解此类情况下发生了什么以及如何最好地解决它,请尝试遵循以下建议:
Frameworks/Mono/lib/mono/YOURSUBSET/.| 财产 | 描述 |
|---|---|
| 着色器精度模型 | 选择着色器使用的默认精度。有关详细信息,请参阅在着色器中使用 16 位精度。
|
| 严格的着色器变体匹配 | 启用此选项可在播放器版本中缺少着色器变体并在控制台中显示错误时使用错误着色器进行渲染。该错误指定用于着色器变体搜索的着色器、子着色器索引、传递和关键字 |
| 保持加载的着色器处于活动状态 | 使所有加载的着色器保持活动状态并防止卸载。 |
使用这些设置来控制内存量着色器在 GPU 上运行的程序。更多信息
请参阅术语表在运行时使用。
| 财产 | 描述 |
|---|---|
| 默认块大小 (MB) | 设置 Unity 存储在所有平台的构建应用程序中的压缩着色器变体数据块的最大大小。默认值为16. 有关更多信息,请参阅着色器加载。 |
| 默认块计数 | 设置 Unity 在所有平台上保留在内存中的解压缩块数的默认限制。默认值为0,这意味着没有限制。 |
| 覆盖 | 启用覆盖此构建目标的 默认块大小(Default chunk size) 和 默认块计数(Default chunk count)。 |
| 块大小 (MB) | 替代此生成目标上的默认块大小 (MB) 的值。 |
| 块计数 | 覆盖此构建目标上的 默认区块计数(Default chunk count) 的值。 |
| 财产 | 描述 |
|---|---|
| 脚本定义符号 | 设置自定义编译标志。 有关更多详细信息,请参阅平台相关编译。 |
| 其他编译器参数 | 将条目添加到此列表,以将其他参数传递给 Roslyn 编译器。为每个附加参数使用一个新条目。 要创建新条目,请单击添加 (+)。要删除条目,请单击删除 (-)。 添加所有所需参数 后,单击“应用”以在将来的编译中包含其他参数。单击“恢复”将此列表重置为最近应用的状态。 |
| 禁止显示常见警告 | 指示是否显示 C# 警告 CS0169 和 CS0649。 |
| 允许“不安全”代码 | 支持在预定义程序集中编译“不安全”的 C# 代码(例如,Assembly-CSharp.dll).对于装配定义文件 ( .asmdef),单击您的.asmdef文件,并在显示的“检查器”窗口中启用该选项。 |
| 使用确定性编译 | 指示是否使用 -deterministic C# 标志阻止编译。启用此设置后,编译的程序集在每次编译时都是逐字节相同的。 有关详细信息,请参阅控制代码生成的 C# 编译器选项。 |
| 财产 | 描述 |
|---|---|
| 预烘焙碰撞网格体(Prebake Collision Meshes) | 在构建时将碰撞数据添加到网格体。 |
| 预加载资产 | 设置玩家在启动时加载的资产数组。 要添加新资产,请增加 Size 属性的值,然后在显示的新 元素(Element) 框中设置要加载的资产的引用。 |
| 剥离引擎代码 | 如果您希望 Unity Linker 工具删除项目不使用的 Unity Engine 功能的代码,请启用此选项。此设置仅适用于 IL2CPP 脚本后端。大多数应用不会使用所有可用的 DLL。此选项会删除应用未用于减小已生成播放器大小的 DLL。如果您的应用程序使用一个或多个类,这些类通常会在当前设置下被剥离,则当您尝试构建应用程序时,Unity 会显示一条调试消息。 |
| 管理剥离级别 | 选择 Unity 剥离未使用的托管 (C#) 代码的积极程度。当 Unity 构建您的应用程序时,Unity Linker 进程可以从您的项目使用的托管 DLL 中剥离未使用的代码。剥离代码可以使生成的可执行文件更小,但有时可以删除正在使用的代码。 有关这些选项和使用 IL2CPP 剥离字节码的详细信息,请参阅 ManagedStrippingLevel。
|
| 启用内部探查器(已弃用) | 此功能已弃用,并将在未来版本的 Unity 中停用。请改用“探查器”窗口(菜单:窗口>分析>探查器)。 探查器收集应用程序性能数据并将报告打印到控制台。该报告包含每个 Unity 子系统在每一帧上执行所花费的毫秒数,平均为 30 帧。 |
| 顶点压缩(Vertex Compression) | 设置每个通道的顶点压缩。这会影响项目中的所有网格体。 通常,顶点压缩用于减小内存中网格体数据的大小、减小文件大小并提高 GPU 性能。 有关如何配置顶点压缩和此设置的限制的更多信息,请参阅压缩网格体数据。 |
| 优化网格数据 | 启用此选项可从构建中使用的网格体中剥离未使用的顶点属性。此选项可减少网格体中的数据量,这有助于减少构建大小、加载时间和运行时内存使用量。 警告:如果启用了此设置,请勿在运行时更改材质或着色器设置。 有关更多信息,请参阅 PlayerSettings.stripUnusedMeshComponents。 |
| 纹理Mipmap剥离 | 为所有平台启用 mipmap 剥离。它在构建时从纹理中剥离未使用的 mipmap 级别。 Unity 通过将 mipmap 级别与当前平台的质量设置进行比较来确定未使用的 mipmap 级别。如果从当前平台的每个质量设置中排除了 mipmap 级别,则 Unity 会在生成时从生成中剥离这些 mipmap 级别。如果 QualitySettings.globalTextureMipmapLimit设置为已剥离的 mipmap 级别,则 Unity 会将该值设置为最接近的尚未剥离的 mipmap 级别。 |
根据所需的日志记录类型,启用与每种日志类型(错误、断言、警告、日志和异常)相对应的选项,选择首选的堆栈跟踪方法。有关详细信息,请参阅堆栈跟踪日志记录。
| 财产 | 描述 |
|---|---|
| 没有 | 从未记录任何日志。 |
| 仅脚本 | 仅在运行时记录脚本一段代码,允许您创建自己的组件、触发游戏事件、随时间修改组件属性以及以您喜欢的任何方式响应用户输入。更多信息 请参阅术语表. |
| 满 | 一直记录。 |
有关详细信息,请参阅堆栈跟踪日志记录。
启用 Clamp BlendShapes (Deprecated) 选项以限制 SkinnedMeshRenderers 中的混合形状权重范围。
使用以下发布设置来配置 Unity 构建 Android 应用程序的方式。
注意:出于安全原因,Unity 不会保存您的密钥库或项目密钥密码。
使用 Keystore Manager 窗口创建、配置和加载密钥和密钥库。 您可以从 Keystore Manager 或 Android Publishing 主面板加载现有密钥库和密钥。如果您选择从 Keystore Manager 中加载这些字段,Unity 会自动填充 Project Keystore 和 Project Key 字段。 有关更多信息,请参阅有关密钥库管理器的文档。
密钥库是保存应用程序安全签名密钥的容器。有关详细信息,请参阅 Android 开发者文档:Android 密钥库系统。
使用项目密钥库设置选择要用于打开项目的密钥库。加载密钥库时,Unity 会加载该密钥库中的所有密钥。 要在打开的项目中加载和使用现有密钥库,请执行以下作:
如果您没有现有的密钥库,请停用自定义密钥库。
Unity 使用调试密钥库对应用程序进行签名。 调试密钥库是一个有效的密钥库。它允许您对应用程序进行签名并在本地进行测试。但是,应用商店将拒绝以这种方式签名的应用程序。这是因为应用商店无法使用调试密钥库验证应用程序的有效性和所有权。
| 财产 | 描述 |
|---|---|
| 自定义密钥库 | 启用自定义密钥库以加载和使用现有密钥库。 |
| 选择 | 启用自定义密钥库后,使用此选项选择要使用的密钥库。选择下拉列表中分区下方的密钥库存储在预定义的专用位置。有关更多详细信息,请参阅选择密钥库位置。 |
| 路径 | 您无需输入密钥库路径。Unity 根据您选择的密钥库提供此功能。 |
| 密码 | 输入密钥库密码以加载您选择的密钥库。 |
加载密钥库时,Unity 会加载该密钥库中的所有密钥。使用项目密钥设置从该密钥库中选择一个密钥,用作打开项目的活动密钥。
| 财产 | 描述 |
|---|---|
| 别名 | 选择要用于打开项目的密钥。 |
| 密码 | 输入您的密钥密码。 |
默认情况下,Unity 使用清单文件Gradle一种 Android 构建系统,可自动执行多个构建过程。这种自动化意味着许多常见的生成错误不太可能发生。更多信息
请参阅术语表Unity 安装随附的模板和 Proguard 文件。使用Android发布设置的 构建(Build) 部分来更改这些设置。
如需使用自定义清单文件、Gradle 模板或 Proguard 文件,请执行以下作:
“生成”部分中的设置仅适用于当前项目的生成过程。
| 财产 | 描述 |
|---|---|
| 自定义主清单 | Android 的可定制版本LibraryManifest.xml文件。此文件包含有关 Android 应用程序的重要元数据。有关主/Unity 库清单职责的详细信息,请参阅 Unity 库清单。 |
| 自定义启动器清单 | Android 的可定制版本LauncherManifest.xml文件。此文件包含有关 Android 应用程序启动器的重要元数据。有关 Unity Launcher 清单职责的更多信息,请参阅 Unity Launcher 清单。 |
| 自定义主 Gradle 模板 | 可定制版本的mainTemplate.gradle文件。此文件包含有关如何将 Android 应用程序构建为库的信息。如需了解详情,请参阅有关 Gradle 项目文件的文档。 |
| 自定义启动器 Gradle 模板 | 可定制版本的launcherTemplate.gradle文件。此文件包含有关如何构建 Android 应用程序的说明。如需了解详情,请参阅有关 Gradle 项目文件的文档。 |
| 自定义基础 Gradle 模板 | 可定制版本的baseProjectTemplate.gradle文件。此文件包含所有其他模板和 Gradle 项目之间共享的配置。如需了解详情,请参阅有关 Gradle 项目文件的文档。 |
| 自定义 Gradle 属性模板 | 可定制版本的gradle.properties文件。此文件包含 Gradle 构建环境的配置设置。这包括:
|
| 自定义 Gradle 设置模板 | 可定制版本的settingsTemplate.gradle文件。此文件包含项目存储库的声明,用于解析应用程序所需的外部依赖项。 |
| 自定义 Proguard 文件 | 可定制版本的proguard.txt文件。此文件包含缩小过程的配置设置。如果缩小删除了一些应该保留的 Java 代码,请添加一个规则以将该代码保留在此文件中。有关更多信息,请参阅有关缩小的文档。 |
缩小是一个缩小、混淆和优化应用程序中代码的过程。它可以减小代码大小并使代码更难反汇编。但是,缩小可以剥离实际需要的代码,因此请确保正确配置此过程。Unity 使用 Proguard 进行缩小。使用 Minify 设置定义 Unity 应何时以及如何将缩小应用于您的构建。有关 Proguard 的信息,请参阅 Proguard 手册。
在大多数情况下,最好仅将缩小应用于发布版本,而不调试版本。这是因为缩小需要时间,并且会使构建速度变慢。由于代码经过优化,它还可能使调试变得更加复杂。
注意:如果通过反射引用 Java 代码,则缩小过程无法推断该代码正在使用并剥离该代码。可以使用自定义 Proguard 文件来保留所需的代码。
缩小部分中的设置仅适用于当前项目的构建过程。
| 财产 | 描述 |
|---|---|
| 释放 | 指示 Unity 在发布版本中缩小应用程序的代码。 |
| 调试 | 指示 Unity 在调试版本中缩小应用程序的代码。 |
启用 拆分应用程序二进制文件(Split Application Binary) 选项,将输出包拆分为主 (APK) 和扩展 (OBB) 包。如果您想发布大于 100 MB 的应用程序,Google Play 商店需要这样做。
如果您计划将应用构建为 Google Play 的 Android App Bundle (AAB),请启用此选项以包含有关 App Bundle 中的依赖项的信息。有关详细信息,请参阅报告应用程序依赖项部分。
注意:只有在 Android 构建设置中启用 Build App Bundle (Google Play) 选项时,才能与此设置进行交互。
玩家设置Android