版本:Unity 6 (6000.0)
语言:English
Android 的数字分发服务
专用服务器

发布到 Google Play

此页面包含有关 Google Play 特定发布要求和注意事项的信息。

有关如何在 Google Play 上发布应用的信息,请参阅 Google Play

发布要求

Google Play 对应用在发布之前必须满足的要求有规定。本节介绍 Google Play 的特定要求,并说明如何满足这些要求。

Android 应用包

Google Play 要求新应用使用 Android 应用包 (AAB) 而不是 APKUnity 输出的 Android 包格式。选择“文件”>“构建并运行”时,APK 会自动部署到您的设备。更多信息
参见 术语表
。有关原因,请参阅 Android 应用包的未来已来

配置应用以使其成为 AAB

  1. 打开 Android 播放器设置

  2. 在“发布设置”部分,启用“拆分应用二进制文件”。

  3. 选择“文件”>“构建设置”。

  4. 在“平台”窗格的平台列表中,选择“Android”。

  5. 启用“构建应用包 (Google Play)”。如果您想要 导出项目并在 Android Studio 中构建它,请启用“导出项目”,然后启用“导出为应用包”。

    注意:“构建应用包 (Google Play)”设置仅在禁用“导出项目”设置时可见。

现在,当您 构建应用时,Unity 会将应用构建为 AAB。

应用大小

Google Play 限制应用的安装大小。下表描述了 Google Play 对每种应用类型的大小限制。

应用类型 大小限制
APK 如果您 拆分应用二进制文件或使用自定义 扩展文件,则 APK 必须小于 100 MB,扩展文件必须小于 2 GB。否则,APK 必须小于 100 MB。
AAB 如果您拆分应用二进制文件或使用自定义 资源包,则 AAB 内的基本模块必须小于 200 MB,资源包必须符合 Android 的下载大小限制 文档中描述的文件大小。否则,AAB 必须小于 200 MB。

有关如何优化应用安装大小的信息,请参阅 优化分发大小

符号文件大小

Google Play 限制符号包或 Android 应用包中嵌入的符号的大小。如果符号文件大小超过此限制,则可能会被拒绝。如果您的符号包大小超过 Android 播放器设置允许您为 Unity 构建的最终游戏设置各种特定于播放器的选项的设置。更多信息
参见 术语表
中“符号大小阈值”中指定的大小限制,Unity 会显示警告。

纹理 压缩一种存储数据的方法,可减少其所需的存储空间。请参阅 纹理压缩动画压缩音频压缩构建压缩
参见 术语表
目标

纹理压缩目标 是 Android 应用包的一项功能,可帮助 Google Play 为不同的设备生成和提供优化的 APK。如果启用此功能,Unity 会在它构建的任何 Android 应用包中包含使用不同压缩格式格式化的纹理资源。当设备从 Google Play 安装应用时,设备收到的 APK 包含使用设备最佳 纹理压缩3D 图形硬件要求纹理以专门的格式进行压缩,这些格式针对快速纹理采样进行了优化。更多信息
参见 术语表
格式的纹理资源。

纹理压缩目标还会自动启用 拆分应用二进制文件 功能并生成名为 UnityTextureCompressionsAssetPack安装时资源包。此资源包包含第一个 场景场景包含游戏的环境和菜单。可以将每个唯一的场景文件视为一个唯一的关卡。在每个场景中,您可以放置环境、障碍物和装饰物,从本质上讲,您可以分段设计和构建游戏。更多信息
参见 术语表
所需的常用资源和资源。禁用纹理压缩目标时,Unity 会将这些资源打包到 基本模块 中。这意味着启用纹理压缩目标会减小基本模块的大小。这可能很重要,因为基本模块的大小限制为 200 MB。有关 Unity 如何配置资源包的更多信息,请参阅 Unity 中的资源包

启用纹理压缩目标

  1. 启用 Android 应用包
  2. 打开 Android 播放器设置
  3. 找到“纹理压缩格式”并向其中添加所有必需的纹理压缩格式。此列表中的第一个纹理压缩格式是 默认格式
    注意:您还可以使用 PlayerSettings.Android.textureCompressionFormats API 分配所需的纹理压缩格式。
  4. 打开 构建设置
  5. 在“平台列表”下的“资源导入覆盖”部分中,将“纹理压缩”设置为除“强制未压缩”以外的值。

注意:启用纹理压缩目标时,Unity 会禁用并忽略“纹理压缩” Android 构建设置,这意味着您无法使用此设置覆盖构建的纹理压缩格式。

如果您未启用 Android 应用包并 导出或将应用构建为 APK,则 Unity 仅使用“纹理压缩格式”列表中的第一个纹理压缩格式。

如果您希望某些纹理资源使用特定纹理压缩格式,则可以覆盖其纹理压缩格式。您为单个 纹理覆盖特定于平台的设置,允许您为每个目标平台设置纹理的分辨率、文件大小以及相关的内存大小要求、像素尺寸和质量。更多信息
参见 术语表
设置的值会覆盖默认纹理压缩格式以及 Google Play 为特定目标设备选择的最佳格式。有关如何更改单个纹理的 纹理格式用于处理 3D 图形硬件(如显卡或移动设备)实时渲染期间纹理的文件格式。更多信息
参见 术语表
的信息,请参阅 纹理导入器

64 位架构

Google Play 要求应用支持 64 位架构。有关更多信息,请参阅 支持 64 位架构。要使您的应用支持 64 位架构

  1. 打开 Android 播放器设置
  2. 在“其他设置”部分,启用“ARM64”。
    注意:仅当您的项目使用 IL2CPPUnity 开发的脚本后端,可将其用作构建某些平台的项目时 Mono 的替代方案。更多信息
    参见 术语表
    脚本后端为 Unity 中的脚本提供支持的框架。Unity 根据目标平台支持三种不同的脚本后端:Mono、.NET 和 IL2CPP。但是,通用 Windows 平台仅支持两种:.NET 和 IL2CPP。更多信息
    参见 术语表
    时,才能与该设置进行交互。

目标 API

Google Play 要求应用支持最低目标 API。有关当前最低目标 API 是什么的信息,请参阅 满足 Google Play 的目标 API 级别要求

更改应用的目标 API

  1. 打开 Android 播放器设置
  2. 在“其他设置”>“标识”部分中,将“目标 API 级别”设置为 Google Play 要求的至少目标 API 级别。

报告应用依赖项

Google Play 可以检查应用使用的程序包管理器和 Asset Store一个不断增长的免费和商业资源库,由 Unity 和社区成员创建。提供各种资源,从纹理、模型和动画到完整的项目示例、教程和编辑器扩展。更多信息
参见 术语表
程序包,以查找已知的认证失败。在您将应用上传到 Play 商店并开始主要认证过程之前,此操作会自动执行。这有助于快速识别应用依赖项中的问题,而无需运行完整的认证过程。如果 Google Play 发现问题,它会通过 Play 商店控制台向您报告这些问题,并提供有关问题以及如何在重新提交应用之前修复这些问题的详细信息。

报告依赖项

  1. 选择“编辑”>“项目设置”。
  2. 在“项目设置”窗口中,选择“播放器”选项卡,然后打开 Android 播放器设置
  3. 在“发布设置”部分,选中“在应用包中报告依赖项”框以启用对 Google Play 的依赖项收集和报告。

应用签名

Google Play 要求应用已签名。有关如何签名应用的信息,请参阅 Android 密钥库管理器

注意事项

本节包含在将应用发布到 Google Play 之前需要注意的 Google Play 特定注意事项。

最佳实践清单

为了帮助成功启动 Android 应用,Android 的文档包含了一个最佳实践清单,其中列出了要遵循的过程。请参阅 启动清单

公共符号

如果您的应用在设备上崩溃,Google 可以使用 符号包 使 Android Vitals 仪表板上的原生堆栈跟踪易于阅读。最佳实践是为您的应用生成 公共符号 包并将其上传到 Google Play。有关如何执行此操作的信息,请参阅 生成符号包

反混淆文件

与符号文件类似,如果您对应用程序构建应用了代码混淆,Unity 也可以生成一个反混淆文件。有关应用代码混淆的更多信息,请参阅Android 播放器设置。反混淆文件会自动生成作为映射文件,位于与应用程序构建相同的位置。

如果您应用了代码混淆,最佳实践是在 Google Play 上发布应用程序时上传反混淆文件。反混淆文件可以解密堆栈跟踪中的方法名称,使您能够识别和解决应用程序崩溃的确切原因。有关更多信息,请参阅 Google 有关反混淆或符号化崩溃堆栈跟踪的文档。

Android 的数字分发服务
专用服务器