SiriKit框架解析 (一) 基本框架

背景

WWDC 2018 苹果更新了Siri使其支持Shortcuts功能,中文名“捷径”,Shortcuts2.2版时改为“快捷指令”。

快捷指令使用手册

什么是快捷指令?

捷径可让您使用应用快速完成任务,只需轻点一下或询问 Siri 即可。
捷径可以自动化各种任务,例如,获取前往“日历”上下一个日程的路线、将文本从一个应用移到另一个应用、生成支出报告等。
基于您使用 iOS 设备的方式,如应用使用以及浏览器、电子邮件和信息历史记录,Siri 可以建议简单实用的捷径,以便快速轻点即可运行。 将捷径添加到 Siri 后,您可以直接召唤 Siri,然后说出捷径指令即可运行它。

“快捷指令”应用

除了运行 Siri 建议的简单捷径外,您还可以使用“捷径”应用将现有捷径或自定捷径添加到 iOS 设备。 该应用可让您合并多个应用间的多个步骤,以创建功能强大的任务自动化。 从应用的“捷径中心”添加捷径或创建自己的捷径后,您可以在应用中、iOS 的“今天”视图、iOS 主屏幕或通过询问 Siri 来启动它们。
SiriKit框架解析 (一) 基本框架_第1张图片

简单说,就是给自己的App设置一个“名字”,然后通过召唤Siri打开你的App或某个功能。

在实际开发中,苹果为我们提供了SiriKit框架来实现这一功能。

SiriKit

SiriKit框架解析 (一) 基本框架_第2张图片

  • 处理来自Siri或地图的应用程序服务的用户请求。
  • 支持Swift/OC语言,iOS10.0+
  • 包含了Intents和Intent UI框架,您可以使用它来实现将服务与Siri和Maps集成在一起的应用程序扩展。
SiriKit支持两种类型的应用程序扩展:
  • Intents应用程序扩展程序从SiriKit接收用户请求,并将其转换为特定于应用程序的操作。 例如,用户可能会要求Siri发送消息,预订或使用您的应用程序开始锻炼。
  • 在Intents app extension完成用户请求后,Intents UI应用程序扩展程序会在Siri或Maps界面中显示品牌或其他自定义内容。 创建此扩展是可选的。
    SiriKit框架解析 (一) 基本框架_第3张图片
    SiriKit定义了用户可以进行的称为意图的请求类型。 相关意图被分组到域中,以明确您可能在应用中支持哪些意图。 例如,消息域具有发送消息,搜索消息以及将消息标记为已读或未读的意图。

您的应用扩展程序很少直接与用户通信。 Siri和Maps通常会处理与用户的所有通信,并仅在需要您提供信息时才会呼叫您的分机。 您可以提供Intents UI应用程序扩展以自定义Siri和Maps显示的信息,但这样做是可选的。

Topics

  1. First Steps
  • 请求用户的权限,以便Siri和地图可以与您的Intents应用程序扩展进行通信。
  • 在Xcode项目中添加和配置Intents应用程序扩展。SiriKit框架解析 (一) 基本框架_第4张图片
  1. Intents App Extension
    Intents应用程序扩展程序可以响应来自Siri和Maps的用户请求。
  • 将您的后端服务移动到一个私有框架,以便您的应用程序和您的应用程序扩展使用它们。
  • 为SiriKit提供能够处理给定意图的对象。
  • 解决,确认和处理用户请求您的应用程序的服务
  • 用于将意图调度到处理这些意图的自定义对象的接口。
  • 了解您用来构建Intents扩展程序的类。
  1. Intent DomainsSiriKit
    根据可能支持它们的应用程序类型将意图分组到域中。SiriKit框架解析 (一) 基本框架_第5张图片
  • 启动呼叫并搜索用户的呼叫历史记录。
  • 发送消息并搜索用户收到的消息。
  • 在用户之间发送付款或支付账单。
  • 创建和管理笔记和待办事项列表项。
  • 使用快速响应(QR)代码传送联系人和付款信息。
  • 搜索并显示照片。
  • 开始,结束和管理健身程序。
  • 预订并报告其状态。
  • 管理车门锁并获得车辆状态。
  • 与车辆的CarPlay系统进行交互。
  • 通过Maps应用的帮助,创建并管理餐厅预订。
  1. ShortcutsSiriKit框架解析 (一) 基本框架_第6张图片
  • 告诉Siri关于用户在您的应用中执行的操作的快捷方式。
  • 从Siri中删除您的捐款。
  • 通过提供应用程序操作的快捷方式,让人们可以轻松地将Siri与您的应用程序结合使用。
  • 允许用户向Siri添加快捷方式,并让您的应用向用户建议快捷方式。
  • 显示Siri表盘上的快捷方式。
  • 为用户提供便捷的方式,通过快捷方式收听和观看应用中的媒体内容。
  • 系统可能向用户或用户建议的应用中可用的操作可能会添加到Siri。
  • 用户与涉及intent对象的应用程序之间的交互。
  • 自定义类型的intent参数对象。
  1. Common Objects
  • 通常的数据类型,如字符串和数字类型都在SiriKit中使用。SiriKit框架解析 (一) 基本框架_第7张图片

  • 管理常用的数据类型,如字符串,日期,货币,图像和联系人。

  • 将常见类型的数据(如字符串和日期)解析为应用程序识别的特定值。

  • 识别用户通知指定的意图。

  1. Vocabulary
    定义通过Siri提出请求时用户可以说话的特定于应用的术语。
    SiriKit框架解析 (一) 基本框架_第8张图片
  • 注册您的应用程序的自定义术语,并提供如何使用您的应用程序与Siri的示例短语。
  • class 用于注册可能包含在Siri请求中的用户特定词汇表的对象。
  1. Custom UI
    SiriKit框架解析 (一) 基本框架_第9张图片
  • 创建Intents UI应用程序扩展,以自定义Siri和Maps显示的界面。
  • 在Siri和Maps界面中呈现自定义内容的方法。
  • 用于隐藏Siri提供的默认接口的部分的方法。
  • 交互对象的参数。

你可能感兴趣的:(SiriKit,Siri,SiriKit框架,框架,Intents,iOS,开发)