对于我的所有目标,总以某种方式“始终嵌入Swift标准库”是。可能是由于Swift 1到5的历史发展。我现在正在使用Xcode 10.2,升级了目标,而我的“ Swift语言版本”都是5。
出于兴趣,我使用Xcode 10.2创建了一个空的新项目,并使用“始终嵌入Swift标准库”将其创建为Debug和Release版本的NO。
我有一种感觉,即使我保持原样,Apple还是会剥离标准Swift库,作为iOS 12.2+变薄的一部分吗?
那么自Swift 5以来正确的默认设置是什么?保持为“是”或更改为“否”有什么好处?
[更新]感谢Cœur的评论。看起来好像其中一个CocoaPods版本做到了。项目设置为否,但是使用CocoadPods的所有目标均为是。
mat*_*att 13
新项目的默认设置是 NO 并且(据我所知)一直都是。我从未将“始终嵌入”设置为“是”,而且我的项目一直运行良好。所以除非有一些很好的理由为什么这是肯定的,否则它可能不应该是。
请注意,仅当您针对 12.2 SDK 构建并使用 12.2(或更高版本)的机器时,才会删除这些库。这些库仍然需要在 12.1 或更早版本的机器上运行。
我来到这里是因为我已经将我的开发环境更新为:
XCode 10.2 iOS 12.2 WatchOS 5.1.3
我的应用程序甚至拒绝在手表上启动,向控制台显示一条消息,说未找到库图像。(使用 Swift4 构建设置)
将“始终嵌入”设置为开启会使手表上的应用程序安装过程非常缓慢。
我更新了项目以使用 Swift5,现在该应用程序至少再次启动。