为iOS 9启用Bitcode会增加3倍的IPA大小,这是应用程序商店的大小吗?

Fro*_*ket 8 xcode ios xcode7 bitcode

在iOS 9之前,我们的IPA大小约为6MB.通过Xcode 7归档和导出我们的IPA后,我们的IPA增加到大约17MB.经过进一步调查,我们发现在导出设置中启用"Bitcode"选项是导致大文件大小跳转的原因.

我的问题是:如果我们启用此选项,我们的IPA大小是否会在商店中达到17MB?或者Apple是否对捆绑做了一些事情,使其大小与以前大致相同(6MB).

目前关于Bitcode的信息并不多,我希望在提交给商店之前得到通知.6MB和17MB就足够了.

San*_*tre 16

Bitcode是编译程序的中间表示.启用它将增加开发人员前端的构建(ipa)大小.

iOS可以在不同的CPU(i386,x86_64,arm,arm64等)上运行,如果你想在任何iOS设置上运行程序,那么程序应该包含每个平台的目标代码.运行程序时,OS会读取"目录"并查找与OS CPU对应的片.例如,如果在x86_64上运行操作系统,则OS会将x86_64的目标代码加载到内存中并运行该程序.

目前,AppStore上的所有应用程序都包含arm和arm64 CPU的目标代码.此外,第三方专有库或框架包含i386,x86_64,arm和arm64的目标代码,因此您可以使用它们在设备和/或模拟器上测试应用程序.

Bitcode如何运作?当您提交应用程序(包括Bitcode)时,Apple的'BlackBox'会为每个支持的平台重新编译它并删除任何"无用的"对象代码,因此AppStore会为每个CPU提供应用程序的副本.当最终用户想要安装应用程序时 - 她只安装特定处理器的版本,没有任何未使用的东西.

Bitcode可以为每个程序节省高达50%的磁盘空间.

参考:http://lowlevelbits.org/bitcode-demystified/