首页 > 解决方案 > 试图让 iOS 13 项目与 iOS 12 兼容

问题描述

我正在尝试使为 iOS 13 设置的 Xcode 项目与 iOS 10 甚至 12 的目标一起工作。我正在使用 Xcode 10 来兼容 Swift 3。

根据这里的建议:Xcode 11 向后兼容性我已经@available(iOS 13.0, *)在建议添加它的地方添加了它,并且我也在var window : UIWindow?AppDelegate 类中声明了它。

// MARK: UISceneSession Lifecycle

@available(iOS 13.0, *)
func application(_ application: UIApplication, configurationForConnecting connectingSceneSession: UISceneSession, options: UIScene.ConnectionOptions) -> UISceneConfiguration {

...

@available(iOS 13.0, *)
    func application(_ application: UIApplication, didDiscardSceneSessions sceneSessions: Set<UISceneSession>) {

在场景委托中:

@available(iOS 13.0, *)
class SceneDelegate: UIResponder, UIWindowSceneDelegate {

但我得到:

使用未声明的类型“UISceneConfiguration”、“UIWindowSceneDelegate”、“UIScene”、“UISceneSession”

我怎样才能解决这个问题?我看不出我还能做什么。

标签: iosxcodebackwards-compatibility

解决方案


我使用 Xcode 10 来实现 Swift 3 的兼容性。

那就是问题所在。您不能使用 Xcode 10 提及 iOS 13 类。它对它们一无所知。如果要链接 iOS 13 SDK,则必须完全在 Xcode 11 中工作。


推荐阅读