我想研究快捷键技术。所以这里有一些问题:
答案 0 :(得分:8)
可以在任何类型的应用中使用Siri快捷方式吗?因为只有SiriKit 在旅游,聊天等工作。
是的,任何。它们与任何特定域名无关。他们是定制的。
现在使用快捷方式。我可以跳转到显示特定页面的应用程序 Siri的?
是
以下代码显示了如何通过Siri显示特定页面的最简单方法,它通过NSUserActivity
称为"捐赠快捷方式" 。但您可以通过定义自定义INIntent
来实现相同目标。
第1步:
在Info.plist
中,在NSUserActivityTypes
下添加一个活动类型字符串:com.app.viewPage
第2步:
创建活动:
let viewPageActivityType = "com.app.viewPage"
let viewPageActivity: NSUserActivity = {
let userActivity = NSUserActivity(activityType: viewPageActivityType)
userActivity.title = "View Page"
userActivity.suggestedInvocationPhrase = "View Page"
userActivity.isEligibleForSearch = true
userActivity.isEligibleForPrediction = true
return userActivity
}()
然后将其添加到视图控制器:
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
userActivity = viewPageActivity
}
}
第3步:
使用UIApplicationDelegate
方法处理它(如果用户按下快捷方式,则会调用此方法,或通过语音从Siri激活此方法):
public func application(_ application: UIApplication, continue userActivity: NSUserActivity, restorationHandler: @escaping ([UIUserActivityRestoring]?) -> Void) -> Bool {
if userActivity.activityType == viewPageActivityType {
print("open the `ViewController` here")
return true
}
return false
}
用户打开ViewController
一次后,他们可能会在锁定屏幕中显示建议并搜索建议。他们还可以前往Settings -> Siri & Search -> My Shortcuts
定义自定义词组,以便使用语音执行操作。
要调试此功能,请确保使用设备(而非模拟器)。然后转到Settings -> Developer -> Enable "Display Recent Shortcuts" and "Display Donations on Lock Screen"
。
这方面有很多很好的资源: