优化 iOS 播放器的体积
Reduce and optimize the size of the iOS Player.
阅读时间3 分钟最后更新于 1 个月前
减小构建的 iOS 播放器体积主要有两种方法:在 Xcode 中创建发布构建,或在 Unity 中调整代码剥离级别。
发布版本构建
建议在 Xcode 中创建最终的发布版本。导航到菜单栏,然后选择产品 (Product) > 存档 (Archive)。此操作可确保构建采用正确的发布配置,并移除所有调试符号。执行此操作后,Xcode 会切换到 Organizer 窗口的 Archives 选项卡。有关如何计算应用体积以及更多减小体积的技巧,请参阅减小应用程序体积。
注意:在优化应用体积以满足无线下载限制时,建议预留一定的误差空间。当前的无线下载限制为 200MB。但从 iOS 13 开始,用户可以选择突破此限制,下载体积超过 200MB 的应用。
托管代码剥离
Unity 在构建过程中通过托管代码剥离技术移除未使用或不可达的代码,从而显著减小最终应用的体积。请参阅托管代码剥离以了解更多信息。
**注意:**有时难以确定哪些类被错误地剥离(尽管应用实际需要这些类)。通常可以通过在模拟器上运行剥离后的应用,并检查 Xcode 控制台中的错误信息来获取线索。
减小构建体积
使用以下检查清单有助于进一步减小构建体积:
-
对纹理启用压缩,并尽量减少未压缩音频的数量。更多减小文件体积的技巧,请参考减小构建的文件体积。
-
- 启用剥离引擎代码 (Strip Engine Code)
- 将脚本调用优化 (Script Call Optimization) 级别设置为 Fast but no exceptions。
- 将 API 兼容性级别设置为 .Net Standard。
-
删除不必要的代码依赖项。
-
避免将泛型容器与值类型(包括结构体)结合使用。
Unity 应用程序的最小体积
如果禁用体积优化,空项目在 App Store 中的体积可能约为 20MB。通过代码剥离,包含空场景的应用程序可以在 App Store 中减小到 12MB 以下。但需注意,应用必须经过压缩并附加数字版权管理 (DRM)。
Apple App Store 中的应用程序体积增加
发布应用时,Apple App Store 服务会先对二进制文件进行加密,然后再通过 zip 压缩。加密会增加代码段的随机性,从而在压缩前可能导致应用体积增加。