在导出包含 Swift 的项目的存档时,我们可以选择“剥离 Swift 符号”。尽管在一个只有一个虚拟 Swift 文件的项目中,我没有看到应用程序大小有任何差异,因此是最大剥离的完美案例。
这究竟是做什么的,它如何影响最终的应用程序大小(.ipa)?
PS:如 Xcode 9 beta 6 中所见
更新:实际上,在查看特定设备变体(但不适用于通用变体)时,我可以观察到 ipa 大小略有减小(未压缩 3.4 MB)
在导出包含 Swift 的项目的存档时,我们可以选择“剥离 Swift 符号”。尽管在一个只有一个虚拟 Swift 文件的项目中,我没有看到应用程序大小有任何差异,因此是最大剥离的完美案例。
这究竟是做什么的,它如何影响最终的应用程序大小(.ipa)?
PS:如 Xcode 9 beta 6 中所见
更新:实际上,在查看特定设备变体(但不适用于通用变体)时,我可以观察到 ipa 大小略有减小(未压缩 3.4 MB)
根据Xcode 文档:
新的 Strip Swift Symbols (
STRIP_SWIFT_SYMBOLS
) 构建设置默认启用。它调整符号剥离的级别,以便在剥离构建的链接产品时,删除所有 Swift 符号。这显着减小了 Swift 框架的大小。如果缺少 Swift 符号导致问题,例如在使用 时dladdr()
,可以禁用此设置。要从已剥离的文件中查看导出的符号,请xcrun dyldinfo -export
使用nm
. (31306055)