Google 著 Tsongli 译
为可以穿戴的Android手表设计应用与为手机和平板设计应用有很大的区别:不同设备有着不同的优势及劣势、不同的应用场景及人体工学考量。想要开始设计,我们应该对Android手表体验有个整体的认识,并且知道应用怎样融入才能改善这种体验。我们还提供了设计源文件以及UI资源,供您下载。
一种新形式的设备应该对应一种全新的UI模式。概括地说,Android手表UI主要由两大类型的模式组成:这两个部分是“提示”(Suggest)和“命令”(Demand)这两部分将会在您的应用中占有极其重要的地位。
情境信息流是一个垂直的卡片列表,每张卡片展示了一个有用的或者适时信息,非常类似于手机和平板上Google Now功能。用户可以垂直滑动来切换卡片,每次滑动只展示一张卡片。卡片的背景图片可以用来传达附加视觉信息。我们的应用也可以在适当的时间或情境下插入自己的卡片。
这种UI模型的好处是:可以保证用户不必为了查看是否有新的动态而启动太多应用。他们可以简单的瞥一眼信息流,就可以知道最新消息,并且判断出哪些对他们是有用的。
信息流中的卡片比简单的通知消息有更多功能。可以水平滑动卡片来显示附加的页面信息。再次水平滑动可以显示动作按钮,这些按钮允许用户在提醒消息上进行操作。通过从左向右滑动可以忽略卡片,把他们从信息流中移除,直到该应用有新消息要展示的时候。
如果Android手表没有在信息流中主动展示建议卡片的时候,用户可以通过提示卡片与手表直接对话。用户可以直接说“OK Google” 提示卡片将会被打开。向上滑动提示卡片会展示建议的语音需求列表,也可以点击卡片来展开列表。
每一条推荐语音命令能够触发一类特定的内容。开发者可以将你的应用与这些语音命令配对,这样用户就可以用这些语音需求来完成任务。可能多个应用会注册同一个的语音命令,但用户可以选择他们想要使用的应用。
应用响应语音命令的方式与响应建议卡片中的操作按钮的方式相同:可以是添加或者更新建议卡片的方式,或者可以启动一个全屏应用来响应。语音输入经常是命令的形式,例如“提醒我去买牛奶”,这种情况下,只要简单反馈给用户确认动画,然后便可以自动返回之前的情境信息流中。
Android手表能够在适当的时候提供合适的信息,让用户在虚拟的世界和现实世界有更多的连接。完美的android手表体验可以大致归纳为以下几个方面:
大多数人习惯通过点击一个图标来启动应用,Android手表则不同。手表中的应用能够感知到用户的情境时间、地点、物理活动等。当检测到情境相关的时候,应用会自动地将相应卡片插入到信息流中。这种方法让android手表实时响应、与用户任务高度相关而且非常聚焦用户任务。
经典款手表设计能够让你在不停下手头事务的情况下瞬时看到时间。Android手表设计也应该遵循这一原则。用户花仅仅少量时间使用手表上的软件,更多的时间可以专注于他们正在做的事情上面。Android手表的体验应该是是迅速、聪明、随时随刻的。
Android手表就像个人助理:她了解你和你的喜好,她只在非常必要的时候才会主动打扰你,并且它总是能够提供一个准备好的答案。Android手表是乐于助人的、有礼貌的、反应敏捷的。
基于小型设备的特点,Android手表注重非常简单的交互形式。仅仅在非常必要的时候才需要用户输入。大多数输入基于手指滑动或者语音,避免一切需要用手精细操作的输入行为。Android手表是手势为主,简单快捷。
通过一种既不过分打扰用户当前任务,又能够使用户智能地与外界保持关联的方式,Android手表会使人感觉既个人又整体、既简单又智能,既不张扬又随时待命。遵从这些原则的应用,在整个Andorid手表体验中会显得自然,毫不突兀。
第三方软件能够通过更加具体的方式帮助用户,并能够延展Android手表的体验。用户通过主动安装应用的方式,能够使得Android手表更好地为之服务。
这里提供一些简单的设计原则来启发您如何计划和进行Android手表应用设计。
手表本身就是一种用户一边做事一边使用的设备。比如在煮饭、吃饭、走路、跑步甚至和别人聊天时使用。如果你发现用户必须停下自己手里的事情才能使用某个手表应用,那么这个应用就有很大的改进空间。
尝试一下:看用户能否在5秒内使用你的应用来完成一项任务?用户能不能一边聊天一边轻松地使用你的应用?注意观察用户在使用应用时是否会影响到他谈话的思路以及和对方的眼神交流。
当你在手机上滑动浏览照片的时候,很大一部分的显示区域都可以响应手势操作,而且无需精准操作,类似这样的交互就非常适合在手表上采用。用户会在各种场景下使用手表应用,最不常见的一种场景应该是:端坐在桌前,专心地使用手表应用。
尝试一下:在各种场景下测试你的应用,比如跑步、吃饭、聊天或者点餐的时候。如果用户必须停下来手里的事情或者需要放慢速度才能准确点击某款手表应用上的按钮,那么你需要采用容错率更高的手势操作。
穿戴式设备能够给用户最好的体验就是猜中用户的心思,主动提供给用户他们在特定场景下所需要的信息。可以利用设备里的各种感应器以及云端同步的各种信息来分析何时展示什么卡片。实在不知道用户想要什么的情况下,再利用语音或者手势交互的形式。
尝试一下:列出用户可能需要使用该应用的所有可能场景。看看这些使用场景之间有什么共同点?比如相同的地点?每天相同的时间?相同的躯体运动?相同的生理指标?然后你就能够分析出在什么场景下给用户推送你的应用程序信息了。一定要记住,如果用户觉得你给出的建议那么不相关的话,用户随时有权利删掉你的建议卡片。
虽然用户每次打开应用只用短短几秒钟,但全天重复使用率非常高,比较好的设计应该是:默认显示的信息量很少,通过滑动才看到更多的操作
尝试一下:看看你的应用默认显示的信息有多少?所有这些信息是否都是必须的?能否分几张卡片显示?设计卡片信息的时候切记卡片是可以分多页展示的。
用户持续使用应用的时间越久,就会越和现实世界脱节。所以设计方案应该尽可能方便用户扫视手表界面,并迅速返回现实世界中来。
尝试一下:利用余光来检视你的应用,当手表应用界面显示的时候,尽可能的盯着你的手指关节。看看这种情况下,你是否还能够明白应用想传达什么信息?是否能一眼就看出这是哪个应用?卡片的背景图片是否能够传达界面想传达的信息?是否使用了照片或者明显的图形或颜色?
手表戴在手上,与手机不用的一点在于,设备直接接触皮肤。作为一个与用户如此亲密接触的设备,震动提醒用户的次数应该比手机应用要少的多。
尝试一下:想象一下你正在和朋友谈话的时候,有人突然轻拍你的肩膀,告诉你一条信息。分析一下这个场景下,你想传达的纸条信息值不值得打断用户的谈话?如果不值得?就尽量不要打断用户。
用户习惯于点击icon来打开一个应用,Android wear则完全不同。典型的Android wear应用会在时机合适,情境适当的情况下,在卡片流中加入一张卡片展示。卡片上可能会加入一个能够展示全屏应用的按钮,以便后续的简单交互,但是通常情况下也可以不加。提示卡片、卡片流、这些是构建Android应用的基本元素,你可以利用这些元素打造所需的应用体验。官方强烈建议:不要设计一款用户必须自己考虑何时何地、在什么场景下,需要打开什么应用才能满足我当前的需求的应用。
这是在Android手表上获取信息最简单的方法。实际上如果你的手机应用能发送消息推送的话,就会自动同步给手表。你可以通过调用通知API,,在手表上同步提醒中添加额外的页面展示或语音回复功能。
在用户需要的时候,向用户展示信息和功能这正是Android手表最擅长的部分。
提醒的方式大致是这样:首先应用需要预判出何时才是与用户情境相关的合适时机,然后当时机到来时a应用会触发一条通知。比如你想设计一款用户在跑步时候会用到的应用,或者用户参观博物馆会用到的博物馆导览应用,都是合适推送情境提醒的时机。
想要设计优秀的Android手表体验,选择合适的用户情境触发提示是至关重要的。最简单的方法是利用标准Android提醒消息模板,也可以制作自己的版式。如果决定要采用这种方式,我们强烈建议您参考官方样式规范,以确保您的设计与系统其他样式保持一致。最好彻底的测试一下应用的触发机制。触发过于频繁会打扰用户,导致用户将你的所有提示都关掉。
二维选择卡很适合展现一个系列的选项。比如Google搜索结果页就是一个很好的范例。
这种样式可被用于展现单一纵向列表,或“一维选项”
该样式同样也可被用做二维选项矩阵,用来表示不同类别的选项
有关卡片上的动作命令部分,请参见动作卡片样式部分。
关于二维选择卡,有一些使用原则需要注意:
当用户做出选择后,应用应该自动退出二维选择卡界面。用户也可以向下滑动第一张卡片来退出,或者从左向右横滑处每个层级最左侧的卡片来退出。
某些情况下卡片的形式不能够满足需求比如拖动底图或者控制游戏方向摇杆的需求。这时就应该暂时进入全屏模式。Android手表上的典型的全屏应用使用体验如图所示:
官方建议只有在卡片本身不能满足需求的时候才应该进入全屏,进入全屏后应该让用户在完成简单操作后迅速退出全屏,返回卡片流当中。这样做用户会感觉你的应用和手表本身的体验更好的融合,交互体验也更加统。Android手表本身在语音回复和秒表应用中采用了全屏界面的展示方式。
全屏应用还有几点需要注意:不要让全屏界面长得太类似卡片,以免让用户产生混淆。如果应用想延续系统的卡片样式风格的话,可以采用二维选择卡的方式
很多手表设备上都没有返回或者home键,所以该如何让用户退出是值得好好考虑的问题。这里给出几种自然退出的场景供大家参考:
即便设置了自动退出的机制,也挡不住某些时候用户希望立即退出的欲望。这种情况下,用户长按屏幕的行为可以视为是希望退出应用的信号。
Android手表应用有两种模式:
交互模式
界面显示颜色,用户可以与应用交互。
省电模式
界面只有黑白和少数灰色显示的省电模式。
交互模式可以展示实时信息,并相应用户操作,但是非常耗电。如果想持续展示有效信息并且还想省电的话,应用可以切换为省电模式。应用处于省电模式时仍可展示动态数据。如果你的应用需要显示持续更新的数据时,这种模式就会非常有用。比如一款记录跑步距离的应用、或者类似购物清单这种需要持续展示动态变化的信息供用户参考的应用。
Andorid 手表上的省电模式体验如下图所示:
应用处在省电模式下时,应去除一切允许用户交互的元素,以免用户误解当前处在交互模式下,并考虑在这种模式下展示时间信息
处于省电模式下的应用基本上每分钟更新一次数据来省电。你也可以把更新频率调整成为10秒一次,但每次更新数据都会消耗电量。
不要在省电模式下展示任何按钮或其他和交互元素,以免用户误解当前处在交互模式下。
使用灰色的元素来让用户明白必须唤醒设备才能够交互。由于在低照明的环境下,任何一个不是黑色的像素都会变得异常明显,所以官方建议在省电模式下,尽可能的使用纯黑的背景。
在设计和开发一款带有省电模式的应用时,还应该考虑用户的隐私问题。举个例子,显示一款聊天软件的对话消息提醒是很有用的,但如果在省电模式下持续在手表界面上展示最新消息可能会带来某些用户隐私泄漏的问题。这时可以考虑在屏幕无响应一段时间以后自动删除隐私信息显示,或者在进入省电模式时根本不显示隐私信息。
在android手表上一些最有力的用户体验基于情境感知提醒和操作。通过使用设备传感器和其他情境线索,当用户需要的时候你的应用可以精确地显示信息和功能,一眼就能看见。
比如一款餐馆推荐的应用,当应用识别出用户正在某个餐馆里面时,应用可以推荐这个餐馆里最受欢迎的菜品。下面举几个例子来展示你可以在你的android手表应用里用提醒和操作确认做哪些事情。
Android手表主要采用微交互的形式与用户互动,所以沿用用户已熟知的设计样式是至关重要的。
卡片流中的卡片分为几类:
应用图标显示在卡片的右上角固定位置,用来在卡片流中区分消息卡片的来源。图片背景用来传达卡片信息而不是用来展示品牌。只有最左侧的卡片需要展示图标,右侧的页面中无需展现图标。