|
苹果推出了一个新框架——App Intents,使开发者可以在iOS 18.2+、macOS 15.2+等平台上集成Siri和Apple Intelligence,实现对应用内容的读取和操作。 App Intents使应用的功能和内容能无缝融入系统体验中,例如Siri、Spotlight搜索、快捷指令和小组件,让用户可以轻松访问应用核心功能,并获得更智能的Siri帮助。 使用 App Intents 的主要功能- 通过 Siri 直接控制应用:用户可以对 Siri 发出指令,例如“查找我的航班”或“添加待办事项”,Siri直接与应用交互。
- 应用内容出现在 Spotlight 中:用户可在 Spotlight 搜索到应用中的内容,避免打开应用。
- 支持快捷指令和自动化:用户可以创建快捷指令以自动执行特定操作。
- 通过硬件按钮触发操作:支持通过iPhone或Apple Watch按钮启动特定功能。
 App Intents 的基本组件- App Intent(应用意图):定义用户可以触发的具体操作,如“打开文档”或“发送消息”,供Siri、快捷指令或Spotlight调用。
- App Entity(应用实体):表示应用内容,如照片、联系人或文件。定义后,用户可通过Siri或Spotlight搜索并访问这些内容。
- App Enum(应用选项):定义选项集合,例如任务状态或相册分类,帮助Siri理解请求内容的上下文。
快捷指令和自动化功能App Intents支持通过快捷指令设置自动化操作。例如,用户可设置“早上好”快捷指令,让Siri在早晨自动打开新闻应用并显示当天新闻。 硬件交互支持App Intents支持在iPhone和Apple Watch的物理按钮上设置快捷方式,如“一键打开相机”或“启动健身追踪”。 实际应用场景示例假设开发一款旅行助手应用: - 查询航班信息:定义“查看航班”操作,用户可通过Siri获取航班详情。
- Spotlight 搜索支持:用户无需打开应用即可在Spotlight中找到航班信息。
- 快捷指令支持:设置“出差模式”快捷指令,点击后可自动显示天气、航班和酒店信息。
- Apple Watch 操作按钮:设置Apple Watch按钮,快速访问航班或行程信息。
 应用内容与 Siri 和 Apple Intelligence 的互动新API允许用户在应用中查看内容时,通过Siri获取相关信息或执行操作。例如,在阅读文档时,用户可以问Siri“这份文件的主要内容是什么?” Siri会根据内容结构回答问题。 场景示例这种集成提升了用户体验,Siri可以更直观地查询、获取内容信息并执行操作。 实现方法开发者通过 AppEntity 定义应用内容,并与 NSUserActivity 关联,使系统可以识别这些内容。AppEntity还需符合 Transferable 协议,以支持多种内容格式(如纯文本、PDF、图片等),方便Siri在不同情境下使用内容。  集成操作至 Siri 和 Apple Intelligence苹果提供了多种助手架构(Assistant Schema),让开发者可为不同内容类型创建适合的Siri响应。例如: - 浏览器架构:开发者可使用
.browser.tab,用户可以询问Siri有关网页的内容。 - 文件管理架构:文件管理应用使用
.files.file,用户可让Siri总结文件内容。 - 照片架构:照片应用使用
.photos.asset,用户可以让Siri描述照片内容。
这些架构帮助Siri识别并理解不同类型内容请求,提供上下文相关的智能回复。 助手架构(Assistant Schema)简介助手架构是一组标准化模板,帮助Siri识别应用功能。例如,对于图片管理应用,photos.openAsset架构可以帮助Siri理解展示照片的指令。 关键组件: - AppIntent:定义用户通过Siri触发的功能(如打开照片)。
- AppEntity:表示应用中特定内容(如照片或文件)。
如何集成 Siri 和 Apple Intelligence开发者可按以下步骤创建符合架构的意图: - 确定功能领域:为每个意图指定内容领域(如照片、文件)。
- 创建新的Swift文件:选择适用的架构(如
photos_)。 - 使用宏:添加
@AssistantIntent(schema 宏来定义功能。
开发者还需确保选项和内容符合架构规范,例如照片应用中定义照片实体和分类选项,以便Siri识别并处理。 更新和迁移意图如需更新现有意图,可设置 isAssistantOnly = true,让新意图仅供Siri识别,避免影响用户的快捷指令。 通过集成Siri和Apple Intelligence,应用操作更加自动化。开发者仅需定义符合要求的操作和内容,即可提升用户的智能化、便捷化体验。 |