SiriKit
发展历史:
iOS 12:新增Shortcuts
iOS 11:更强大的Siri
iOS 10:发布SiriKit
SiriKit开发相关的拓展
• Intents Extension 将您的应用程序内容传递给Siri和Maps,并执行与任何支持的意图相关的任务。
• Intents UI App Extension 为Siri或Maps界面中的内容提供自定义界面。此扩展是可选的。(可以使用苹果提供的原生界面,或者自定义界面)
SiriKit根据可能支持它们的应用程序类型将意图分组到域中。
消息
发送消息并搜索用户收到的消息。
列表和注释
创建和管理备注和待办事项列表项。
锻炼
开始,结束和管理健身程序。
支付
在用户之间发送付款或支付账单。
Vo IP呼叫
发起呼叫并搜索用户的呼叫历史记录。
可视代码
使用快速响应(QR)代码传达联系和付款信息。
相片
搜索并显示照片。
乘车预订
预订并报告其状态。
汽车指令
管理车门锁并获得车辆状态。
汽车游戏
与车辆的CarPlay系统互动。
餐厅预订
在地图应用的帮助下创建和管理餐厅预订。
媒体
通过Siri Intents聆听和控制音频,或通过快捷方式收听和观看应用中的媒体内容。
集成开发
1.启用Siri功能。
2.配置Info.plist文件。
- iOS应用程序请求授权。
1.开启Siri功能
• (1)在项目设置中,选择适当的目标。
• (2)选择Capabilities选项卡。
• (3)启用Siri功能。
- Intents App扩展
• (1) 在Xcode中打开现有的应用程序项目。
• (2) 选择File > New > Target。
• (3) 从iOS或watchOS平台的Application Extension组中选择Intents扩展。
• (4) 点击下一步。
• (5) 指定扩展名称并配置语言和其他选项。
• (6) 对于iOS应用程序,如果您计划自定义Siri界面的某些部分,请启用包含UI Extension选项。
2.1指定扩展支持的Intents
(1)在Xcode中,选择Intents应用程序扩展的文件。Info.plist
(2)展开NSExtension和键以显示密钥(iOS和watchOS)和密钥(仅限iOS)。NSExtensionAttributesIntentsSupportedIntentsRestrictedWhileLocked
(3)在密钥中,为扩展程序处理的每个intent添加一个String项。将每个项的值设置为intent的类名。IntentsSupported
(4)在密钥中,为要求解锁设备的每个intent添加一个String项。将每个项的值设置为intent的类名。IntentsRestrictedWhileLocked
参考资料:
wwdc2016 使用SiriKit扩展应用程序
https://developer.apple.com/videos/play/wwdc2016/225/
SiriKit 官方文档
https://developer.apple.com/documentation/sirikit#//apple_ref/doc/uid/TP40016875-CH5-SW1
创建intent应用程序扩展
https://developer.apple.com/documentation/sirikit/creating_an_intents_app_extension
请求授权使用SiriKit
https://developer.apple.com/documentation/sirikit/requesting_authorization_to_use_sirikit
创建Intents UI扩展
https://developer.apple.com/documentation/sirikit/creating_an_intents_ui_extension
SiriKit支持iOS和watchOS应用的以下域和操作。
https://developer.apple.com/design/human-interface-guidelines/sirikit/overview/domains-and-intents/
高级应用功能
https://developer.apple.com/support/app-capabilities/
扩展资料
SiriKit框架详细解析
基本概览
https://www.jianshu.com/p/bb4eb2d4e0c5
请求授权使用SiriKit和INPreferences类
https://www.jianshu.com/p/18e9397884e6
创建Intents App扩展(一)
https://www.jianshu.com/p/ca04ea29d8f1
构建代码以支持App扩展和将意图调度到处理对象(一)
https://www.jianshu.com/p/ec2ec3485af7
编程指南之Intents和Intents UI扩展(一)
https://www.jianshu.com/p/53d26445e284
编程指南之确认和处理请求、指定自定义词汇表和界面(一)
https://www.jianshu.com/p/e843e5c2b2f6
构建Siri Shortcuts简单示例(一)
https://www.jianshu.com/p/a6fdee63acda
构建Siri Shortcuts简单示例(二)
https://www.jianshu.com/p/33edaa92583e
构建Siri Shortcuts简单示例(三)
https://www.jianshu.com/p/0f96c5c26ec7