首页 > 解决方案 > 如何创建一个接受来自用户的输入的 Siri Intent

问题描述

我创建了一个自定义 Intent,其参数如下:

在此处输入图像描述

我已经捐了:

let intent = PlayIntent()
intent.color = color
let interaction = INInteraction(intent: intent, response: nil)
interaction.donate()

它显示正确:

在此处输入图像描述

但是,我想要一个接受用户输入的 Intent。例如,Messages.app:

在此处输入图像描述

如何配置我的自定义 Intent 来处理输入?

标签: iosios12sirikitnsuseractivitysirishortcuts

解决方案


据我所知,此功能不适用于第三方快捷方式——我的意思是,这些快捷方式不是由构建 Siri Shortcuts(以前的 Workflow)应用程序的团队定义的。所有第三方快捷方式都显示在快捷方式应用程序中,并带有以下文本:

此操作将输入作为输出传递。

令人困惑的是,这些内置快捷方式通常针对第三方应用程序,例如 Instagram 或 Overcast。很难区分应用程序开发人员添加了哪些应用程序的快捷方式,以及工作流程开发人员添加了哪些应用程序的快捷方式。

唉。


参考:

快捷方式: Mac 故事中 Siri 和 iOS 自动化的新愿景:

从我目前收集到的信息来看,iOS 12 中的 Siri 目前不支持将输入消息传递给使用用户短语激活的自定义快捷方式的能力,而且在第一个版本中不太可能获得这样的功能iOS 12。这意味着 Siri 将只是一个自定义快捷方式的启动器,而不是一个可以在运行时为特定参数传递用户命令的实际界面。

另外,这条推文

这是关于 iOS 12 W̶o̶r̶k̶f̶l̶o̶w̶ 快捷方式的内容。工作流在获取输入并将变量传递给链下的其他操作时蓬勃发展。但第三方 Siri 快捷方式不允许任何数据输入或输出。


推荐阅读