20

在导出包含 Swift 的项目的存档时,我们可以选择“剥离 Swift 符号”。尽管在一个只有一个虚拟 Swift 文件的项目中,我没有看到应用程序大小有任何差异,因此是最大剥离的完美案例。

这究竟是做什么的,它如何影响最终的应用程序大小(.ipa)?

在此处输入图像描述

PS:如 Xcode 9 beta 6 中所见

更新:实际上,在查看特定设备变体(但不适用于通用变体)时,我可以观察到 ipa 大小略有减小(未压缩 3.4 MB)

4

1 回答 1

11

根据Xcode 文档

新的 Strip Swift Symbols ( STRIP_SWIFT_SYMBOLS) 构建设置默认启用。它调整符号剥离的级别,以便在剥离构建的链接产品时,删除所有 Swift 符号。这显着减小了 Swift 框架的大小。如果缺少 Swift 符号导致问题,例如在使用 时 dladdr(),可以禁用此设置。要从已剥离的文件中查看导出的符号,请xcrun dyldinfo -export使用nm. (31306055)

于 2017-11-18T16:26:04.450 回答