gpt4 book ai didi

ios - 从自定义快捷操作中传递参数

转载 作者:行者123 更新时间:2023-11-28 07:20:17 47 4
gpt4 key购买 nike

我想为我的倒计时应用程序创建一个自定义快捷操作,它返回一个包含剩余倒计时时间的变量。从自定义快捷操作返回参数是 iOS 13 的一项新功能,但我没有成功让它工作。

我尝试过的

我已经定义了我的意图并使用正常过程在 Xcode 11 中创建了一个意图扩展。我已经成功地向 Siri/Shortcuts 提供了操作,并通过与 Siri 交互以及从 iOS 13.1 下的 Shortcuts 应用程序启动它们来使它们正常运行。目前,我的一项操作是让 Siri 报告一个描述剩余时间的字符串,并在 IntentsUI 扩展中显示时钟滴答作响。从快捷方式运行时,此操作成功显示 IntentsUI 扩展 ViewController。我希望此操作传递一个参数,其中包含剩余时间,可供其他快捷方式操作使用。

我已经创建了一个输出参数,并使用 this WWDC 2019 video 的 29:51 中描述的步骤将其分配给意图响应。 .这涉及修改应用程序的 intentsdefinition 文件以定义变量,将其作为属性添加到 intent 响应中,并将其标记为输出。 Xcode 的意图代码生成成功地将输出变量添加到我的意图处理协议(protocol)中,我能够在我的意图处理程序中访问和填充输出变量。

什么不起作用

不幸的是,当我在快捷方式中运行操作时,它似乎没有提供输出变量。例如,如果我在其下方添加一个“文本”操作,则没有线将我的自定义操作连接到文本操作。如果我尝试将一个变量添加到以后的操作中,该变量不会出现在可用变量列表中,当我点击“魔法变量”按钮时,它也不会出现在我的操作中。

我知道其他应用程序开发人员已经成功地实现了带有输出参数的快捷方式操作,所以我看起来不是 Xcode 11 或 iOS 13 错误(其中有很多)。任何帮助/建议将不胜感激。

最佳答案

想通了!为了 future 读者的利益......

如果您想从自定义快捷方式中传递参数,您需要选中 intentdefiniton 文件中的“Intent is user-configurable”复选框。即使在我的例子中,没有供用户配置的输入参数,您也需要这样做。从上面引用的 WWDC 视频来看,这一点一点也不明显。

关于ios - 从自定义快捷操作中传递参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58411824/

47 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com