Swift库在IPA中包括两次

时间:2014-11-10 08:34:24

标签: xcode swift ipa

我发现所有Swift库(libswiftCore.dylib,libswiftCoreGraphics.dylib,...)在IPA中都存在两次。解压缩IPA后,SwiftSupport文件夹中有一个版本的库,而Payload / Frameworks中的文件也是相同的。

据我所知,当构建Swift项目时,SwiftSupport文件夹总是由Xcode生成。但是Payload / Frameworks中的Swift库来自何处以及如何摆脱它们?

3 个答案:

答案 0 :(得分:2)

我认为如果你的代码已经使用了Swift,你就没有设置Flag"嵌入内容包含Swift代码"在Build Options to NO中,否则Xcode会添加库,因为它认为你使用了一些具有swift代码的框架

答案 1 :(得分:2)

我遇到了同样的问题。我已经阅读了一些答案,这些答案表明这不是什么大问题,我不得不说它看起来不是。

我的应用包含3个目标 - 主应用和2个今天的扩展。当我创建一个存档时,它的大小是126 MB。其中大多数是Swift支持库,在我的情况下大约45 MB,它们包括两次。

但是,当我通过测试飞行检查二进制大小时,它是23.6 MB。现在,考虑到我的应用程序是一个简单的实用程序,这仍然很多。

但是,如果考虑到必须包含Swift库,那就不算太多了。到目前为止,我会说,即使这些库在IPA中包含两次,它们也不会在实际二进制文件中包含两次。

这显然没有回答原来的问题,我也急切地等待有人提出确切的解决方案,但这可能会有所帮助。

答案 2 :(得分:2)

我发现使用'嵌入内容包含Swift'值可以获得一些好的结果,而且对于我的Apple Watch扩展程序通过验证实际上至关重要。

I have written an answer about the details for the Apple Watch fix here