【发布时间】:2018-09-29 17:51:19
【问题描述】:
我的 iOS 应用程序的最小部署目标设置为 iOS 8.0,我想在其中启用聚光灯搜索。我了解 Spotlight 搜索只能在 iOS 9 及更高版本中使用。这就是为什么在我的 AppDelegate 中我使用 available
@available(iOS 9.0, *)
func application(_ application: UIApplication, continue userActivity: NSUserActivity, restorationHandler: @escaping ([Any]?) -> Void) -> Bool {
if userActivity.activityType == CSSearchableItemActionType {
if let uniqIdentifier = userActivity.userInfo?[CSSearchableItemActivityIdentifier] as? String {
print(uniqIdentifier)
}
}
return true
}
Xcode 给了我这个错误
协议“UIApplicationDelegate”需要 'application(_:continue:restorationHandler:)' 在 iOS 上可用 8.0 及更高版本
我能用它做什么
【问题讨论】:
-
我认为您没有正确使用@available。你检查过这个吗? raywenderlich.com/139077/availability-attributes-swift
-
我对 AppDelegate 中的一些其他方法使用相同的方式,这很好。我在下面找到了解决方案。
-
是的,我已经检查过了,太好了:)
标签: swift ios8 appdelegate corespotlight