iOS Development Guidelines
  • Introduction
  • 规范
    • 0. 介绍
    • 1. 序言
    • 2. 代码命名规范
      • 2.1. 代码命名基础
      • 2.2. 方法(Method)命名
      • 2.3. 函数(Function)命名
      • 2.4. 属性(Property)与数据类型命名
      • 2.5. 其它命名规范
      • 2.6. 可接受缩略名
    • 3. 代码格式规范
      • 3.1. 代码注释格式
      • 3.2. 代码结构与排版
    • 4. 开发实践
      • 4.1. Objective-C保留字
    • 5. Xcode工程结构
    • 6. 版本控制
      • 6.1. Git基本配置
      • 6.2. Git分支模型
      • 6.3. SVN源代码管理规范
      • 6.4. SVN的标准目录结构
    • 7. 附录
      • 7.1. Xcode扩展插件
      • 7.2. 第三方开源库
    • 8. 参考
    • 9. iOS开发优化
  • Swift编码规范
  • Objective-C新特性
  • iOS生命周期
  • Apple 官方设计指南
    • iOS 人机交互指南
      • 概览 - 设计理念
      • 概览 - iOS 10 新功能
      • 概览 - 接口要素
      • 交互 - 3D Touch
      • 交互 - 辅助功能
      • 交互 - 音频
      • 交互 - 身份验证
      • 交互 - 数据输入
      • 交互 - 反馈
      • 交互 - 文件处理
      • 交互 - 初次启动体验
      • 交互 - 手势
      • 交互 - 加载
      • 交互 - 模态
      • 交互 - 导航
      • 交互 - 评分和评论
      • 交互 - 请求权限
      • 交互 - 设置
      • 交互 - 术语
      • 交互 - 撤销与重做
      • 系统功能 - 多任务
      • 系统功能 - 通知
      • 系统功能 - 打印
      • 系统功能 - 快速预览
      • 系统功能 - Siri
      • 系统功能 - TV 供应商
      • 可视化设计 - 动画
      • 可视化设计 - 品牌化
      • 可视化设计 - 颜色
      • 可视化设计 - 布局
      • 图像 - 应用图标
  • Apple 官方开发指南
    • App 发布指南
      • 待完善
    • Cocoa 代码指南
      • 代码命名基础
      • 方法命名
      • 函数命名
      • 属性和数据类型命名
      • 可接受的缩写词和首字母缩写词
      • 针对框架开发者的技术细节
    • 核心蓝牙编程指南
      • 待完善
  • iOS 杂谈
    • Auto Layout 是怎么进行自动布局的性能如何
    • App 启动速度的优化与监控
    • 多人的大项目,架构怎么设计更合理
    • 链接器:符号是怎么绑定到地址上的
    • App 如何通过注入动态库的方式实现极速编译调试
    • 静态分析工具的选择
    • Clang的App 提质
    • 无侵入的埋点方案如何实现
    • 包大小:如何从资源和代码层面实现全方位瘦身
    • iOS 崩溃千奇百怪如何全面监控
    • 如何利用 RunLoop 原理去监控卡顿
    • 临近 OOM,如何获取详细内存分配信息,分析内存问题
    • 日志监控:怎样获取 App 中的全量日志
    • 性能监控:衡量 App 质量的那把尺
    • 远超想象的多线程的那些坑
    • 怎么减少 App 电量消耗
    • 除了 Cocoa,iOS还可以用哪些 GUI 框架开发
    • 细说 iOS 响应式框架变迁,哪些思想可以为我所用
    • 如何构造酷炫的物理效果和过场动画效果
    • A/B 测试:验证决策效果的利器
    • 怎样构建底层的发布和订阅事件总线
    • 如何提高 JSON 解析的性能
    • 如何用 Flexbox 思路开发?跟自动布局比,Flexbox 好在哪
    • 怎么应对各种富文本表现需求
    • 如何在 iOS 中进行面向测试驱动开发和面向行为驱动开发
    • 如何制定一套适合自己团队的 iOS 编码规范
    • iOS 系统内核 XNU:App 如何加载
    • iOS 黑魔法 Runtime Method Swizzling 背后的原理
    • libffi:动态调用和定义 C 函数
    • iOS 是怎么管理内存的
    • 如何编写 Clang 插件
    • 打通前端与原生的桥梁:JavaScriptCore 能干哪些事情
    • React Native、Flutter 等,这些跨端方案怎么选
    • 原生布局转到前端布局,开发思路有哪些转变
    • iOS原生、大前端和Flutter分别是怎么渲染的
    • 剖析使 App 具有动态化和热更新能力的方案
  • Flutter
    • 0.Flutter学习笔记以及问题记录
    • 1.Dart基础快速入门
    • 2.什么是声明式UI
    • 3.Flutter入门基础知识
    • 4.项目结构、资源、依赖和本地化
    • 6.布局与列表
    • 7.状态管理
    • 8.路由与导航
    • 9.手势检测及触摸事件处理
    • 9.线程和异步UI
    • 10.主题和文字处理
    • 11.表单输入与富文本
    • 12.调用硬件、第三方服务以及平台交互、通知
    • 13.基于Http实现网络操作
    • 14.图片控件开发详解
    • 15.异步:Future与FutureBuilder实用技巧
    • 16.APP首页框架搭建-Scaffold与PageView
Powered by GitBook
On this page

Was this helpful?

  1. Apple 官方设计指南
  2. iOS 人机交互指南

系统功能 - Siri

Previous系统功能 - 快速预览Next系统功能 - TV 供应商

Last updated 5 years ago

Was this helpful?

你的应用程序可以集成 Siri 来执行某些响应用户的语音命令和问题的任务。Siri 可以进行语言处理和语义分析,将口头请求转换成应用程序可以处理的指令。你的应用程序定义它支持的任务,验证接收到的信息,为 Siri 提供信息,并采取行动。通过 Siri 从你应用程序响应的信息会由 Siri 说出,并出现在 Siri 的界面中。如果合适,你的应用程序可以为 Siri 提供一个自定义用户界面来显示。一个健身应用,例如,健身应用可能会提供自定义的锻炼信息。

以下类型的 iOS 应用程序可以集成 Siri。

应用类型

支持与 Siri 的互动

音频和视频通话

发起通话。 查找通话记录。

消息

发送消息。 读取收到的消息。 搜索消息。

付款服务

付款。 申请支付。 工资单。 查找账单。

相片管理

在应用中查找和显示相片。

健身活动

开始,暂停,恢复,结束,和取消训练

运输服务

预订行程。 提供行程状态信息。

与交通工具联动的车载软件

激活危险信号灯或按喇叭。 锁上或者打开车门。 检查当前的燃料或功率等级。

与 CarPlay 联动的车载软件

更改车上的音频源。 更改车上的温控系统。 更改车上的除霜设置。 更改车上的座椅温度。 更改车上的无线电台。

争取一种不需要触摸或观看屏幕的声音驱动体验。他们可能会通过耳机、汽车或是从房间里与 Siri 互动。尽可能地,让用户在无需解锁屏幕的情况下也能完成任务。

快速响应并最小化交互。 人们使用 Siri 是为方便,并期待快速响应。呈现有效的、有重点的选择,尽可能的减少额外提示的可能性。

将用户直接带到指定内容。 从 Siri 转换到你的应用程序,应该直接到达预期的目的地。不要显示中间画面或信息,这会降低用户体验。

相关和准确。 使应用程序的响应与用户当前的请求和期望相关。例如,如果用户请求 Siri 用应用程序发送消息,请发送消息。不要执行无关的操作。

恰当的内容。 永远不要包括可能带有攻击或贬低的内容。

当请求有财务影响时,默认为最安全和最便宜的选项。 不要欺骗用户或歪曲信息。对于具有多个定价级别的购买,不要默认为最昂贵的。在用户付款的时候,不要在不通知他们的情况下收取额外的费用。

确保您的自定义界面与 Siri 很好的集成。 使用你的应用程序的颜色、图像和其他设计元素来传达你的品牌是很好的,但是任何定制的界面元素仍然应该感觉它们属于 Siri。

不要在自定义界面中包含应用程序名或图标。 系统会自动显示此信息。

提高自定义词库的准确性。 帮助 Siri 通过定义人们可能在请求中实际使用的特定术语来了解应用程序所执行的操作,比如联系人姓名、照片标签、相册名称、乘车选项和训练名称。这些术语对于你的应用来说应该是非通用的,并且是独一无二的。不要包括其他应用程序名称、与其他应用程序明显相关的术语、不恰当的语言或保留短语,如“嘿 Siri 。” 请注意,您定义的任何术语都由 Siri 用于请求帮助解决,但不能保证被识别。

提供请求例句。 为 Siri 提供例句,当用户点击 Siri 界面的帮助按钮时这些例句就会被展现在向导里。使用这些例句引导用户如何以最简单高效的方式通过 Siri 来使用你的应用。

不要做广告。 你的应用程序的 Siri 体验永远不应该包括广告,营销,或在应用程序购买的推销。

不要试图模仿或操纵 Siri 。 你的应用程序不应该模仿 Siri ,试图再现 Siri 提供的功能,或提供的一个似乎来自苹果的响应。

关于开发者的指导,请参阅 。

SiriKit Programming Guide