1

在我的应用程序中,我实现了 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)
    }
4

1 回答 1

3

如果用户已经添加了 Siri 的快捷方式,您不能以编程方式将其删除,但用户必须按照此处所述手动删除它(段落:删除带有相应数据的捐赠):

https://developer.apple.com/design/human-interface-guidelines/sirikit/overview/siri-shortcuts/

如果您想删除尚未添加到 Siri 的捐赠,您可以执行INInteraction.deleteAll. 请在此处查看文档以获取有关此功能的更多详细信息:

https://developer.apple.com/documentation/sirikit/ininteraction

于 2018-11-22T14:05:57.790 回答