设计 App Shortcuts
Design App Shortcuts
2022年6月6日
一句话判断
iOS 16 的 App Shortcuts 机制让应用的快捷操作在安装后自动可用,这场 Session 从设计角度告诉你该选哪些功能、怎么命名、如何展示——核心原则是”自包含、简洁、不超过 5 个”。
这场 Session 讲了什么
Apple 设计团队的 Lynn 详细讲解了如何为应用设计优质的 App Shortcuts。iOS 16 最大的变化是:App Shortcuts 不再需要用户手动添加到 Siri,应用安装后即自动在 Siri、Spotlight 和 Shortcuts app 中可用。这使得用户与应用核心功能的交互门槛大幅降低。
Session 以一个冥想应用为例,逐步讲解了四个方面:如何选择合适的功能变成 Shortcut、如何命名和提供同义词、如何设计视觉展示和收集必要信息、以及如何让用户知道这些 Shortcut 的存在。
值得深挖的点
功能选择的双重标准:自包含 + 简洁。好的 App Shortcut 必须能在不打开应用的情况下完成,比如”开始睡眠冥想”——说完就播放。反面教材是那种需要填写长表单、多步骤操作的任务。你的应用里真正符合这个标准的功能可能比你想象的少。
短语命名的三个层次。第一,简短好记且必须包含应用名;第二,巧妙地把应用名嵌入短语中(如”Record Voice Memo”而非”Record in Voice Memo”);第三,为每个 Shortcut 提供充分的自然语言同义词变体(“Record Voice Memo” / “Start Voice Memo” / “New Voice Memo”),并且这个工作需要对应用发布的每种语言都做一遍。
动态参数的巧妙用法。可以在短语中嵌入一个动态参数,让用户直接指定类型,如”Start [meditation type] Meditation”。限制是只能有一个参数、且必须是有限列表。参数值列表可以在应用打开时更新,确保始终反映最新内容。每个参数值与基础短语组合后形成一个独立的 Shortcut 变体。
最多 10 个,推荐 2-5 个。Apple 明确建议控制在 5 个以内,精而优胜过多而杂。Spotlight 只会展示第一个 App Shortcut,所以排列顺序很重要。
代码片段
// AppShortcut 的基本结构
struct MeditationShortcuts: AppShortcutsProvider {
static var appShortcuts: [AppShortcut] {
// 第一个 Shortcut 会在 Spotlight 中展示
AppShortcut(
intent: StartMeditationIntent(),
phrases: [
"Start a \(.applicationName)",
"开始\(.applicationName)冥想",
"用\(.applicationName)放松"
],
shortTitle: "开始冥想",
systemImageName: "brain.head.profile"
)
}
}
// 使用动态参数创建多变体
AppShortcut(
intent: StartMeditationIntent(meditationType: .sleep),
phrases: [
"Start \(.applicationName) \(.meditationType)",
"开始\(.applicationName)\(.meditationType)"
]
)
最佳实践
- 应用名在短语中的使用可以灵活变通:官方名称、App Store 提交的别名都可以,选择读起来最自然的那个
- 同义词要全面但不跑题——“Record”和”Start”是合理的变体,但”Save”可能暗示了不同的意图
- 每种发布语言都需要本地化的同义词列表,这不是可选项
- Spotlight 只展示第一个 App Shortcut,把最常用的放在第一位
- 收集用户输入时,优先使用系统级 UI(如日期选择器、联系人选择器),避免自定义表单
- 视觉上使用系统 SF Symbols 作为 Shortcut 图标,保持与系统风格一致
还有什么值得关注
- App Shortcuts 在 Shortcuts app 中会以应用为分组展示,应用名的显示和图标选择会影响用户的第一印象
- 参数值的数量直接影响 Shortcut 变体的总数,每个变体都会出现在 Spotlight 和 Siri 中,注意控制规模
- 考虑用户未登录或未配置的场景——Shortcut 在应用安装后立即可用,如果需要认证流程,需要优雅地处理
- 这套设计方法论同样适用于 visionOS 和 macOS 上的 App Shortcuts