什么"剥离Swift符号"在Xcode中实际上呢?

时间:2017-09-06 14:21:26

标签: ios xcode app-thinning

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

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

enter image description here

P.S:如Xcode 9 beta 6所示

更新:实际上,在查看特定设备变体时,我可以观察到轻微的ipa尺寸减小(3.4 MB未压缩)(尽管不适用于通用变体)

1 个答案:

答案 0 :(得分:7)

根据Xcode docs

  

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