SiriKit框架解析 (三) SiriShortcuts 开发实践
第一步:新建一个项目
第二步: 创建Custom Intent
在项目中通过“New File…” 创建一个Intents.intentdefinition文件。
cmd+n 搜索关键字intent
创建完之后项目中出现.intentdefinition文件:
第三步: 创建Intent意图
选中.intentdefinition文件 -> No Intents -> 加号 -> New Intent
创建完之后,这里命名为StarIntent
第四步: 填写Intent信息
- Custom Intent基本配置
Custom Intent部分中的选项定义了它的意图类型,并且可以影响Siri如何处理该操作。 告诉Siri这是一个Post类型动作让系统知道你在某处分享了一些内容:
- Category:Post
- Title:Post Article
- Description:Post the last article
- Default Image: Select one of the existing images in the project
- Confirmation: Check this box since you want to ask the user to verify that they’re really ready to publish this article
Parameters部分用于定义Title和Subtitle中使用的任何动态属性,您现在可以使用这些属性。
-
定义一个名为article的参数,它是一个Custom数据类型,一个是类型为String的publishDate。
-
然后,在Shortcut Types部分中,单击加号按钮以添加一个包含article和publishDate参数作为其参数的类型。
-
接下来,设置快捷方式的Title和Subtitle。
将标题设置为Post “${article}”和副标题设置为on ${publishDate}。 如果您不复制和粘贴,请确保让Xcode自动完成article和publishDate。
-
最后,确保选中Supports background execution,这样您就不会被迫离开Siri UI。
- Responses配置:
单击Response,您可以定义Siri将如何响应用户。
在Properties下,您可以再次定义Siri所说的动态部分。 添加title,publishDate和failureReason的属性;把它们都定义为字符串。
然后,在Response Templates下,为failure添加此模板:
抱歉,没找到"${title}"
为成功添加以下模板
Nice,即将为你打开"${title}"
第五步:添加Frameworks
第六步:添加Shortcut按钮
在vc中引入头文件,并初始化intent和shortcutButton

协议方法:
用于在Siri中通过设定语音调起应用时处理Siri的请求。
最终效果:
打开设置-Siri与搜索
手机Siri应用建议: