如何删除 Swift 中添加的快捷方式?
How to delete added Shortcuts in Swift?
在我的应用程序中,我实现了 Siri 快捷方式。用户可以使用 INUIAddVoiceShortcutButton
添加快捷方式,这会显示 INUIAddVoiceShortcutViewController
。这很完美。用户可以使用 INUIAddVoiceShortcutButton
添加和编辑快捷方式。但是我如何以编程方式删除快捷方式?当用户删除应该使用此快捷方式执行的操作时,应该会发生这种情况。
这是我用来显示 INUIAddVoiceShortcutViewController
:
的代码
let videoReturnIntent = VideoShortcutIntent()
videoReturnIntent.videoID = informationToShowDetail.videoID!
videoReturnIntent.suggestedInvocationPhrase = "Test"
videoShortCutIntent = videoReturnIntent
if let shortcut = INShortcut(intent: videoReturnIntent) {
let viewController = INUIAddVoiceShortcutViewController(shortcut: shortcut)
viewController.modalPresentationStyle = .formSheet
viewController.delegate = self // Object conforming to `INUIAddVoiceShortcutViewControllerDelegate`.
present(viewController, animated: true, completion: nil)
}
如果用户已将快捷方式添加到 Siri,您不能以编程方式将其删除,但用户必须按照此处所述手动将其删除(段落:删除带有相应数据的捐款):
https://developer.apple.com/design/human-interface-guidelines/sirikit/overview/siri-shortcuts/
如果你想删除还没有添加到Siri的捐款,你可以执行INInteraction.deleteAll
。请在此处查看文档以获取有关此功能的更多详细信息:
https://developer.apple.com/documentation/sirikit/ininteraction
在我的应用程序中,我实现了 Siri 快捷方式。用户可以使用 INUIAddVoiceShortcutButton
添加快捷方式,这会显示 INUIAddVoiceShortcutViewController
。这很完美。用户可以使用 INUIAddVoiceShortcutButton
添加和编辑快捷方式。但是我如何以编程方式删除快捷方式?当用户删除应该使用此快捷方式执行的操作时,应该会发生这种情况。
这是我用来显示 INUIAddVoiceShortcutViewController
:
let videoReturnIntent = VideoShortcutIntent()
videoReturnIntent.videoID = informationToShowDetail.videoID!
videoReturnIntent.suggestedInvocationPhrase = "Test"
videoShortCutIntent = videoReturnIntent
if let shortcut = INShortcut(intent: videoReturnIntent) {
let viewController = INUIAddVoiceShortcutViewController(shortcut: shortcut)
viewController.modalPresentationStyle = .formSheet
viewController.delegate = self // Object conforming to `INUIAddVoiceShortcutViewControllerDelegate`.
present(viewController, animated: true, completion: nil)
}
如果用户已将快捷方式添加到 Siri,您不能以编程方式将其删除,但用户必须按照此处所述手动将其删除(段落:删除带有相应数据的捐款):
https://developer.apple.com/design/human-interface-guidelines/sirikit/overview/siri-shortcuts/
如果你想删除还没有添加到Siri的捐款,你可以执行INInteraction.deleteAll
。请在此处查看文档以获取有关此功能的更多详细信息:
https://developer.apple.com/documentation/sirikit/ininteraction