iOS:面向 iOS 9 时使用 Swift 4
Posted
技术标签:
【中文标题】iOS:面向 iOS 9 时使用 Swift 4【英文标题】:iOS: Using Swift 4 when targeting iOS 9 【发布时间】:2017-06-08 21:55:31 【问题描述】:Swift 4 添加了一些非常酷的功能,例如强类型键路径和JSON encoding/decoding using Codable
。
我希望在仍然面向 ios 9 及更高版本的同时使用这些新功能。
据我了解,Swift 语言版本不绑定到 iOS 版本,例如与 Foundation 框架相反。但是,如果那是正确的,我找不到任何信息。
当面向 11 岁以上的 iOS 时,我可以使用 Swift 4 吗?
【问题讨论】:
【参考方案1】:是的,就像 Swift 1、Swift 2 和 Swift 3 一样,您可以将 Swift 4 与任何版本的 iOS 7 及更高版本一起使用。
查看 Swift 3 的类似问题:Xcode 8 / Swift 3 and installing apps on iPhone 4 running iOS 7 请参阅 Swift 2 的类似问题:Swift 2.0 minimum system version requirement (deployment target)
注意:由于 iOS 11 正在放弃对 32 位的支持,您将只能从 arm64 切片(即 iPhone 5S 及更高版本)使用 iOS 11。 Source:
iOS 11 不再支持 armv7 或 armv7s(32 位)。如果 iOS 目标具有 iOS 部署 目标为 11,则不会为 32 位构建。 iOS 目标与之前的 iOS 部署目标 默认情况下,超过 11 的版本仍将构建为 32 位。 (32163517)
【讨论】:
您是否有一些 Apple 文档的链接显示 Xcode 9 将无法针对 arm7?我听说过,但没有看到它记录在案。 根据 Xcode 9 发行说明,实际上是 iOS 11 放弃了对 32 位应用程序的支持,而不是 Xcode。因此,在 Xcode 9 中构建时,您应该能够以 iPhone 5S 之前的设备为目标:“iOS 11 不再支持 armv7 或 armv7s(32 位)。如果 iOS 目标的 iOS 部署目标为 11,那么它将不会为 32 位构建。iOS 部署目标早于 11 的 iOS 目标仍将默认为 32 位构建。(32163517)" Xcode 发行说明:developer.apple.com/go/?id=xcode-9-beta-rn 请注意,您需要使用您的设备 ID 登录才能看到该页面。以上是关于iOS:面向 iOS 9 时使用 Swift 4的主要内容,如果未能解决你的问题,请参考以下文章
将文本分配给UILabel(iOS,Swift 4,Xcode 9)时内存泄漏
在一个视图控制器中使用不同的按钮上传多个图像(iOS、Xcode 9、Swift 4)