Xcode归档文件过大

6
我有一个Unity3D项目,我已经通过Xcode发布到iOS上。以前的存档大小约为30-40Mb,这让我很满意。
现在我在Unity项目中做了一些更改,并为Xcode重新构建了它。现在当我进行归档时,文件的大小约为110Mb,与之前的文件大小相比非常巨大。我只改变了标志和启动画面设计。
另外,当我重新构建旧版本时,大小也不再是30-40Mb,而是110Mb!
所以我猜测这与新的iOS8 Xcode有关?不是100%确定,因此我正在问。
谢谢。

你确定你的资源没有使大小膨胀吗? - Ian MacDonald
这正是我所想的,但我并没有改变任何资源,只有我的启动画面。 - Oliver Jones
1
获取生成的 .ipa 文件并开始获取其中的内容大小。建议从资源开始。也许添加了 @3x 图像文件? - picciano
2
在iOS 8发布后,我更新了Unity到4.6版本后也遇到了同样的问题。在归档我的游戏之后,估计的大小看起来是300 MB,但是在上传到苹果商店后,它现在只有60 MB,这是正常的。也许这篇帖子有答案 - nexx
(Unity应用程序构建)预计App Store大小:140.8 MB,商店中列出的大小为33.4 MB。仅包含在软件包中的闪屏图像未压缩时就已经达到了30兆字节(我所有的JPEG都被转换为PNG)。安装后,如果我进入“设置”->“通用”->“使用情况”->“管理存储”,我会看到应用程序已安装了141 MB。因此,也许预计的App Store大小是已安装的大小,而不是下载大小,如果您想保持在100 MB的仅限WiFi的限制以下,则这一点非常重要。 - Scott Driscoll
显示剩余4条评论
4个回答

2

尝试关闭BitCode。打开XCode => Build Settings => 搜索Enable BitCode。将其设置为No。


谢谢,建议很有帮助。不过我的同事启用了“Enable Bitcode = YES”并制作了小型档案和ipa文件。 - General Failure
对我没用。它默认设置为“否”,但尺寸尚未减小。 - Ilham Safeek

1

1
我认为这里发生的一部分原因是arm64切片的额外开销(除非您之前已经包含了arm64切片)。我不会期望arm64的大小增加那么多,但应用程序二进制文件的大小仍将增加大约X2(减去资源)。
截至2月1日,苹果要求支持arm64以及使用iOS 8 SDK构建应用程序。默认的Xcode构建设置启用arm64。
您可以在xarchive上执行“显示包内容”,然后找到应用程序可执行二进制文件。然后,您可以比较先前和现在的应用程序可执行二进制文件的大小差异。您还可以在其上运行lipo-info,以查看之前和现在的所有切片。请注意,我假设您有旧的xarchive可供比较。
然后,我可能会对剩余的资源进行差异处理(使用类似Araxis Merge的工具),以查看文件中的差异。这将让您看到哪些资源文件已更改或添加。如果您的差异只是可执行文件,则已经确定了大小差异的位置。

0

“Estimated App Store Size” 反映的是应用程序安装后的大小,而不是下载大小。

我基于以下测试得出这个结论:

(Unity 应用程序构建) “Estimated App Store Size”:140.8 MB,在商店中列出的大小为:33.4 MB。仅包内的启动图像就达到了30兆字节未压缩(所有JPEG都转换为PNG),因此安装后的大小不可能是33.4 MB。安装后,如果我进入“设置”->“通用”->“存储空间管理”,我会看到该应用程序已安装141 MB。

我不确定如何估算下载大小,如果您有一个希望通过蜂窝网络下载并需要下载大小在100 MB以下的应用程序,则这很重要。

我将其作为评论添加到问题中,但我希望我能够将其作为答案阅读,所以在这里呈现。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接