我看过很多参考资料Link https://stackoverflow.com/questions/37262262/bitcode-and-dylib为了找出之间的联系BITCODE_ENABLE
and .dylib
框架,但我无法得到积极的结果。请任何人帮助我两者之间的确切联系是什么,并提及使用BITCODE_ENABLE
清楚地。
我认为您混淆了 Bitcode 的实际含义。位代码可以与静态框架和动态库一起使用。
来自苹果文档 https://developer.apple.com/library/watchos/documentation/IDEs/Conceptual/AppDistributionGuide/AppThinning/AppThinning.html:
位码是已编译程序的中间表示。您上传到 iTunes Connect 的包含位码的应用程序将在 App Store 上进行编译和链接。包含位码将允许 Apple 将来重新优化您的应用程序二进制文件,而无需向商店提交应用程序的新版本。
大多数库和框架都是“胖的”,这意味着它们包含额外的二进制文件来支持所有架构。这意味着 iOS 框架可能支持 armv7、armv7s 和 i386(所有设备架构和模拟器)。
使用位码构建库可以使其支持应用程序精简。这意味着仅从 App Store 下载适合应用程序运行架构的二进制文件。此外,正如 Crazyrems 在评论中提到的,这将优化应用程序安装和下载大小,因为设备只会下载应用程序在特定架构/设备上运行所需的资源。
我不会详细介绍 LLVM IR,但我建议阅读这些文章作为参考:
比特码揭秘 http://lowlevelbits.org/bitcode-demystified/
为什么我不启用 Bitcode - 关于应用程序二进制文件打包和软件分发的思考 https://medium.com/@FredericJacobs/why-i-m-not-enabling-bitcode-f35cd8fbfcc5#.l6ffxl7zz
静态库、框架和位码 https://medium.com/@heitorburger/static-libraries-frameworks-and-bitcode-6d8f784478a9#.6vxi9lmrx
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)