【问题标题】:Does enabling bitcode work for iOS versions before iOS 9 (iOS 7/8)?启用位码是否适用于 iOS 9 (iOS 7/8) 之前的 iOS 版本?
【发布时间】:2016-04-14 13:41:18
【问题描述】:

我听说过很多关于启用 bitcode 会减少从应用商店下载到 iOS 9 上的应用程序的二进制大小的讨论。我无法找到任何有关 bitcode 是否会减少二进制大小的资源以前的 iOS 版本。

在 iOS 7 或 iOS 8 上启用位码会减小二进制大小吗?

编辑 根据这个thread App Slicing 和 Bitcode 是两个独立的组件。考虑到App Thinning 的文档将它们分成不同的部分,这将是有意义的。 Apple 是否有任何关于 iOS 对 Bitcode 的要求的官方消息?

【问题讨论】:

  • “我听过很多关于启用位码会减少从应用商店下载到 iOS 9 上的应用的二进制大小” 官方来自 Apple 的“谈话”,还是其他人的非正式谈话?
  • 大部分是非官方的,文档明确指出这是“App Thinning”的一部分,它的存在是为了重新优化从商店编译的应用程序,但没有详细说明。我认为这导致了对位码要求的很多混淆,这就是我提出这个问题的原因。您的问题还向我表明,我假设 bitcode 只会分发该架构所需的二进制文件,但这也没有明确说明 - 它可能会针对所有架构进行优化/发行。再次,回到导致很多混乱的文档。

标签: ios ios7 ios8 ios9 bitcode


【解决方案1】:

没有。 App Slicing/Bitcode 仅适用于 iOS 9。 iOS 版本早于 9.0.2 的设备将自动下载完整大小的捆绑包。

来源:http://www.macrumors.com/2015/10/05/ios-9-app-slicing-now-available/

【讨论】:

  • 本文仅介绍应用切片。没有提到Bitcode。
【解决方案2】:

我看到了那个帖子:

另一个潜在问题(无法确认)-Bitcode thingie 工作 仅适用于 iOS 9,因此如果您将应用程序提交到 AppStore 并且 包括Bitcode,然后malefactor可以从你的应用程序中获取整个IR 使用 iOS 7/8 和越狱设备。

来自bitcode-demystified

或另一篇文章:Bitcode

另一个来自 SO:Bitcode

希望对你有帮助。

【讨论】:

  • 那是一些可靠的读物,谢谢。在 cmets 中,它声明“你真的认为 iOS 8 及更低版本会获得包括 IR 在内的整个二进制文件吗?我假设 Apple 会编译一个普通的胖二进制文件并从中剥离 IR。否则应用程序会变得比以前更大在没有 iOS 9 的设备上。”回复“我猜他们只会在不重新编译的情况下剥离位码,否则,正如你所说,它没有任何意义。”看来判决还没有出来。
猜你喜欢
  • 2017-06-25
  • 1970-01-01
  • 1970-01-01
  • 2015-01-01
  • 2015-01-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多