【发布时间】:2012-03-11 05:45:17
【问题描述】:
我已将 AIR 构建的 .ipa 文件上传到 Apple。来自 Apple:“下面列出的应用程序二进制文件在您提交时为 8 MB,但在 App Store 处理后将为 20 MB”
所以我正在尝试修剪它。我已经摆脱了所有未使用的 .as 类和所有未使用的资产。有没有人有任何巧妙的方法来进一步减小文件大小?我想到的一种方法是:
如果我在 A 类:
[Embed(source="assets/newButtons/purple/purpleHomeSmall.png")]
然后我用相同的代码将它重新嵌入到 B 类中,这是否意味着它以两倍的文件大小嵌入了两次?如果是这样,我将如何将它嵌入到一个类中但可以在其他类中访问它?
编辑:我发现如果你的项目中有你不使用的资产,编译器仍然会添加它们。因此,您必须在发布版本之前摆脱它们。
【问题讨论】:
-
检查生成的 IPA 文件(它实际上是一个 ZIP 文件 - 因此您可以重命名并解压缩它)。它是否包含您期望的文件,或者它们实际上是否嵌入了两次?
-
我重命名并解压缩。它创建了一个名为 Payload 的文件夹,其中有 1 个项目,一个 .app 文件,大小为 22 兆。 (我在 Mac 上)。
-
现在在您的 Mac 上选择该应用时使用显示捆绑内容。
-
很酷的把戏 - 谢谢!我只看到一次文件,但那些是 .png 源文件。 Unix 可执行文件为 21 兆;我不知道他们是否在那里两次。
-
flex 编译器应该检测到基本上使用相同资源两次,并且在这种情况下用户 swf 大小不应加倍。
标签: ios actionscript-3 mobile air embed