watchOS是否支持自定义SiriKit Intent的语音快捷方式?

时间:2018-09-09 20:07:06

标签: ios watchkit watch-os sirikit

我正在尝试获取自定义Siri Intent的语音快捷方式,该快捷方式作为Apple Watch应用程序的一部分工作,但是我不确定是否可行。有没有人成功做到这一点,或者知道它是否受支持?

在这种情况下,没有太多代码可共享,因为大多数代码都是Xcode自动生成的,但是这里是我如何进行所有设置的快速概述。

我使用.intentdefiniton文件创建了一个自定义Intent,并为我的iOS应用和watchOS应用创建了单独的Intents扩展目标以处理该Intent。

我在适当的时候设置并捐赠了快捷方式。我在应用程序中包含了INUIAddVoiceShortcutButton,以便用户可以轻松添加或编辑快捷方式的短语。

一切都可以在iPhone上正常运行:快捷方式会在整个iOS的相关时间显示,并且当我对Siri说出调用短语时,iOS应用中的Intents Extension会处理该快捷方式。

由于我的应用程序中有20%的用户使用Apple Watch应用程序,因此我想在watchOS上提供一致的体验。按预期,捐赠的快捷方式会显示在Siri表盘上。我从Siri表盘触发快捷方式,并由watchOS应用程序中的Intents Extension处理。

但是,当我在Apple Watch(仅适用于Series 3 GPS)上说出意图的调用词组时,它不起作用。 Siri说:

  

正在检查应用程序...

然后几秒钟:

  

我无法识别该命令。

我已经为我的watchOS应用尝试了单独的Intents Extension,并且没有尝试。在两种情况下,我都得到相同的结果。 它可以在模拟器上运行,但不能在真实设备上运行。

我还确保在目标会员身份下为.intentdefinition文件选择了我的Watch Extension和Watch App。

我也尝试过进入“设置”>“开发人员”并启用“ 显示最近的快捷方式” ,然后点击“ 强制同步观看快捷方式”,但这不会改变行为。 / p>

Apple Watch是否甚至支持这些自定义意图的语音快捷方式?我无法通过Apple的文档来说明一种方法。 SoupChef示例项目使用watchOS应用程序的Intents Extension进行了设置,这使我认为应该予以支持。而且,由于它可以在模拟器上运行,因此我认为应该予以支持。

但是,此页面未列出watchOS支持的自定义意图,因此让我认为它们可能不受支持:https://developer.apple.com/design/human-interface-guidelines/watchos/user-interaction/siri/

如果有人可以帮助我确定是否支持此功能,我将非常感谢。我不确定自己是在做错什么还是不支持。

1 个答案:

答案 0 :(得分:0)

问题出在我的Apple Watch上。

我可以通过删除手表来使其正常工作(设置> 常规> 重置> 删除所有内容和设置),然后从备份中还原它。