作者:NotFound9,iOS / 后端开发者,Github 1.5K+ Star数的开源后端技术总结项目-interviewGuide作者,微信公众号《大厂面试》号主
Sessions: https://developer.apple.com/videos/play/wwdc2020/10068/
推荐语
快速浏览 Siri 和 Shortcuts 中的所有新功能,以帮助人们从您的应用程序中获得更多收益:我们将演示如何设计新颖的紧凑型 Siri UI,从而设计视觉效果丰富的对话,让您有更好的操作系统体验。同时可以浏览通过应用程序组织和设置操作的所有方式。
简单介绍
这个 Session 主要介绍了 SiriKit 和快捷指令 App 的一些更新。在 iOS 14 的更新中,SiriKit 部分主要包含 紧凑型 UI 在 Siri 中的应用,紧凑型 UI 在快捷指令中的应用,以及 如何将紧凑型 UI 应用到你 App 中的 Intents UI 中去。快捷指令 App 部分主要包含 更便于管理和组织指令的“文件夹模式” 和 **快捷指令的自动化功能 **。
SiriKit
Siri 是一个智能助手,它提供了一种更快,更轻松的方式来完成您的工作。在 iOS 14,苹果重新设计了 Siri,使得 Siri 拥有了这种精美的新型简明型设计。仅关注最重要的信息,在帮助您快速完成工作时,将给您带来的干扰最小化。无论您在手机上做什么,您的 Siri 都可以运行。
SiriKit 是一个用于扩展 Siri,让第三方 App 也支持 Siri 的框架。用户可以通过与 Siri 进行对话,发送指令,Siri 进行解析后,调用第三方的 App,执行特定的操作,来满足用户的需求。了解更多可以看看SiriKit 的官方文档
紧凑型 UI 在 Siri 中的应用
Siri 更像 App 的一个扩展,无论是从功能上还是从设计上都可以说明。
让我们来看看天气应用 App,在这个 App 内,您可以查看所有喜欢的城市的天气,还可以深入查看特定城市,以查看更多详细信息,例如空气质量,日出和日落时间等。如下图所示:
在 iOS 13 中,向 Siri 询问天气,Siri 会告诉你当前的预报,即将到来的每小时预报和其他一些详细信息。如下图所示:
在提倡紧凑型 UI 的 iOS 14 中,向 Siri 询问天气,它只会展示最简明,最有用的信息。但这不是为了简化而简化,而是要了解用户最需要什么。
紧凑型 UI 在快捷指令中的应用
在 iOS14 中,我们同样把紧凑型 UI 带到了快捷指令 App 中,在执行一个快捷指令时,如果需要接收用户的输入,那么会弹出一弹窗,供用户进行输入。如下图所示,在执行一个支付相关的快捷指令时,需要用户选择同意或者是取消。
如何将紧凑型 UI 应用到你 App 中的 Intents UI 中去
简单科普一下 Intents:
Intents 就是用户意图,Siri 可以对用户的语音请求进行解析,解析成一个用户意图,然后根据用户意图去执行一些操作。第三方的 App 也可以通过集成 SiriKit,对一些 App 内的操作封装成一个用户意图,供 Siri 来调用。
而 Intents UI 就是触发了第三方 App 扩展的用户意图后,显示的界面,可以是系统提供的界面,也可以自定义界面。了解更多可以阅读SiriKit 的官方文档
通过 Siri 和地图提供服务
因为快捷指令的最终目的都是让用户更高效地去使用 App 完成一些操作,这里主要是将怎么将这种紧凑型 UI 应用到第三方 App 设计的 Intent UI 界面上。
主要有三点需要注意的:
1. 避免模棱两可(disambiguation)
用户通过 Siri 触发第三方 App 扩展的用户意图时,你可以在界面自定义一些选项,供用户进行选择,如下图所示:
在 iOS 14 中,通过新的 API,不仅可以自定义选项标题,还可以自定义选项的配图,让这些选项的区分度更高,将常用的选项排在前面,并且配图可以帮助用户做出更加合适 的选择,避免用户在选择时产生模棱两可的感觉。(当然过多的图片也可能会导致用户在看屏幕时信息量过大,产生应接不暇的感觉。)
2.Intents UI 设计需要注意的点
UI elements
在设计 Intents UI 时,需要始终牢记你的用户意图是为了帮助用户完成什么,以及当用户意图被触发,Intents UI 展示在屏幕上时,什么才是真正重要的。(从设计上来说,就是分清主次,在设计 UI 时,将真正重要的元素展示在最显眼的位置,供用户使用。)
Height
因为基于这种紧凑式 UI 的设计,不管用户当前在使用手机做什么,当用户意图被触发时,Intents UI 总是显示在屏幕上方,所以将 Intents UI 的纵向高度设置得越小,对用户当前的屏幕显示的内容侵入性也小,可以最大程度减少对用户的当前操作干扰。
Background
为了让显示在顶部的 Intents UI 的弹窗与当前的屏幕显示的内容相协调,不管弹窗是通过 Siri 还是快捷指令触发的,背景颜色都是这种不透明的。如果你有需要,可以修改弹窗的颜色,但是最好在不同的屏幕背景下进行测试,保证弹窗内容的可阅读性。
快捷指令
快捷指令是 iOS,iPad OS,Watch OS 系统自带的一个 App,主要便于用户更快,更自动化,更个性化地使用苹果设备。在 App 里面可以将多个操作合并在一个快捷指令中,只需要点击一个快捷指令,就可以帮你执行。
下图就是快捷指令 App 的编辑器界面,通过对操作进行录制,封装成一个快捷指令,可以将你所有常用的 App 中的操作,全部收集到快捷指令 App 中来。只需要单击一个快捷指令就可以让它运行起来。例如唤起 Siri 的操作,或者唤醒其他 App 的操作。
更便于管理和组织指令的“文件夹模式”
自从快捷指令 App 内置到 iOS 13 系统中后,就收获了大量粉丝用户。不管是用它来实现洗衣计时器还是简单小计算等上百种快捷指令。快捷指令使得用户拥有了一种新的,有创造力的方式去与 App 进行交互。在 iOS 14 中,通过引入“文件夹模式”使得管理快捷指令更加简单。
通过使用新的方式来创建和管理快捷指令,用户使用和保存快捷指令会更快。
首先这里有两个小的文件夹,可以帮助用户区分哪些快捷指令在 Share Sheet 中,或者是 Apple Watch 中。
在 iOS 14 中,Apple Watch 新增了快捷指令 App。在 Apple Watch 中,出来可以运行快捷指令,还可以设置快捷指令,并且通过在表盘中点击,可以运行它们。这意味着可以将 App 中复杂的功能带到 Apple Watch 中的表盘中来,Apple Watch 中可与 iOS 上的快捷指令无缝配合,人们可以在 Apple Watch 对可用的快捷指令进行添加和删除(通过将 iPhone 上的快捷指令的”Show on Apple Watch“的开关打开可以使得指令在 Watch 中显示)。
想要了解更多快捷指令在 Apple Watch 上是怎么运行的,可以看看 《Create quick interactions with Shortcuts on watchOS》 这个 session。
快捷指令的自动化功能
有时候用户希望快捷指令在满足一些特定条件时,自动运行。在 iOS 13 中,我们引入了 Automation 模块,用户可以设置一些触发条件,让指令自动运行(例如到了一天的某个时间点,或者是到了某个特定的地方,或者是打开了某个特定的 App)。用户已经设置好了指令,Automation 使得执行这些指令更快。
在 iOS 14 中,Automation 模块引入了一些新的指令触发类型。例如用户可以设置在收到邮件或者是消息时触发快捷指令的运行。
或者是在关闭某个特定 App 时,触发快捷指令的运行。
或者是当电量低于某个特定值时,触发快捷指令的运行。
或者是与充电器建立连接时,触发快捷指令的运行。
下面是 iOS 14 中新增加的指令触发类型列表:
获取快捷指令的灵感的一个好地方就是 gallery,在 iOS 14 中,我们将 automation 的建议收集添加到了 gallery,在这里可以发现大量好用的快捷指令。
最后
如果你想要了解更多关于如何让用户通过快捷指令与你的 App 进行交互,可以看看这个 session《Feature your actions in the Shortcuts app》,想要了解其他 SiriKit 相关的更新可以看看《Get the most out of Sign in with Apple》
推荐阅读
关注我们
我们是「老司机技术周报」,每周会发布一份关于 iOS 的周报,也会定期分享一些和 iOS 相关的技术。欢迎关注。
关注有礼,关注【老司机技术周报】,回复「2020」,领取学习大礼包。
支持作者
这篇文章的内容来自于 《WWDC20 内参》。在这里给大家推荐一下这个专栏,专栏目前已经创作了 108 篇文章,只需要 29.9 元。点击【阅读原文】,就可以购买继续阅读 ~
WWDC 内参 系列是由老司机周报、知识小集合以及 SwiftGG 几个技术组织发起的。已经做了几年了,口碑一直不错。 主要是针对每年的 WWDC 的内容,做一次精选,并号召一群一线互联网的 iOS 开发者,结合自己的实际开发经验、苹果文档和视频内容做二次创作。
本文分享自微信公众号 - 老司机技术周报(LSJCoding)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。