如何减小 iOS 内置 Xamarin.iOS 游戏和应用程序的大小?

How to reduce the size of iOS games and apps built in Xamarin.iOS?

Apple 开发人员指南的 link 是:

https://developer.apple.com/library/prerelease/content/documentation/LanguagesUtilities/Conceptual/iTunesConnect_Guide/Chapters/SubmittingTheApp.html

在那 link 上,他们有“提交 App 以供 App Review”部分,其中包含以下消息:

"异常大的构建文件通常是将数据(例如图像)存储在已编译的二进制文件本身而不是应用程序包中的资源的结果。如果你是将图像或大型数据集编译到您的二进制文件中,最好将此数据拆分为由您的应用程序动态加载的资源。 "

我的游戏使用的 PNG 图片的总大小约为 130 Mb。当我编译并将游戏加载到我的 iPad 上进行测试时,我可以看到游戏的总大小约为 190 MB,如 iPad 所示。

我已经将 PNG 图像放在 Xamarin studio 的文件夹“resource”中,我的代码在编译和构建我的游戏之前将这些图像构建到纹理图集中。

因此,根据 Apple 在上面消息中的建议“最好将此数据拆分为由您的应用程序动态加载的资源”,我的问题是关注:

(1) 我可以通过“将图像放入另一个可以由我的游戏动态加载的资源中来进一步减小我的游戏的大小" ? (或者 "App Thinning" 对这种情况有帮助吗?)

(2) 如果上面问题 (1) 的答案是 "YES",你能告诉我怎么做吗?或者你能给我发一个 link 到 Xamarin 网站,告诉我们如何做吗?

非常感谢。

我不完全确定,因为文档不是很清楚。不过,有很多方法可以减小尺寸。例如,您可以使用按需资源,这也是一种可用于 Apple 设备的技术。

我包含了一些您可能感兴趣的其他主题的链接。例如:你真的需要为所有 Apple 平台构建(arv6,7,x86_x64...)吗?可以在下面的链接中找到更多信息。

部分归结为您的用例和用户群等,但您可以将 App Thinning 与 Xamarin 结合使用

Reducing Executable Size

Use the linker to remove unnecessary code

Apple's On Demand Resources

Multiple architectures?