我刚刚使用Xcode 8的转换功能,将一个Swift 2应用程序转换为Swift 3。
我的代码中有一个被标记为WCSessionDelegate
的类。
在Swift 2中,它可以编译,没有sessionDidBecomeInactive
和sessionDidDeactivate
方法。
如果我编译Swift 3版本,编译器会抱怨我的类不符合协议WCSessionDelegate
,这显然是正确的。
然后,它会提供插入这两个函数的存根:
public func sessionDidBecomeInactive(_ session: WCSession) { }
public func sessionDidDeactivate(_ session: WCSession) { }
这些存根被插入后,会报告以下错误:
Cannot override 'sessionDidBecomeInactive' which has been marked unavailable
Cannot override 'sessionDidDeactivate' which has been marked unavailable
我该如何解决这个问题?
deactivate
和inactive
回调函数的类;它是否被编译并用于 iOS 应用程序和 WatchKit 扩展? - ccjensen