2020 年 4 月更新
自 2020 年 4 月 2 日起,由于 COVID-19 大流行,Apple 将强制执行 iOS13 和 Swift 4.x 的新指南的截止日期从2020 年4 月 30日延长至6 月 30 日。这是在其开发者网站上宣布的。
重要的
Apple 正在弃用 Swift 3.x,用 Swift 3.x 编写的代码库必须更新到(至少)Swift 4.x。从 2020 年 4 月开始,无法从 Swift 3.x 项目部署到 AppStore。
有关说明,请参见编辑 #1和编辑 #2。
根据 Apple 的此更新:
从 2020 年 4 月开始,所有新应用和应用更新都需要使用 iOS 13 SDK 构建,并支持 iPhone XS Max 或更高版本的全屏设计。
从 7 月开始,我已经在这里检查了matt的答案,但是几乎没有需要详细说明的缺失点。
- 这个要求是否会迫使开发人员使用 Swift 5?我们有几个巨大的 Swift 3 项目,其中包含许多第三方依赖项。将这些项目更新到 Swift 5 很麻烦。
- 只是为了确认 matt 的回答,我们可以使用最新的 Xcode 版本但针对 iOS11 及更高版本吗?
- 从支持可维护性和较少特定于平台的代码的开发人员的角度来看,针对 iOS13 及更高版本使用 SwiftUI 和暗模式等新功能是否更合乎逻辑?
编辑#1
根据达芬奇的回答,他/她所说的一切都是真的,除了第 1 点。
- 不,您仍然可以在 Build 设置中设置 Swift 版本。
不幸的是,10.1 之后的所有 Xcode 版本都不支持 Swift 3.x。因此,带有第三方依赖项的遗留代码库将从 Swift 3.x 迁移到 Swift 4.x。
10.1 之后的 Xcode 版本的最低支持版本是 Swift 4.x。
编辑#2——重要!
这是不好的。根据@matt 的回答,Xcode 10.1 无法针对 iOS 13。考虑到这一点和编辑#1,不可能在 Swift 3.x 上工作或以 10.1 之后的 Xcode 版本为目标的 iOS 13。简而言之,Apple 正在弃用 Swift 3.x。