本文描述了与其它触屏手机系统和桌面系统不同的Android平台特性,这些特性需要更多的表现在我们开发的应用程序中,以保证这是一款Android手机的应用。这些特性可能对于习惯了其它手机操作系统的用户可能有不习惯的地方,需要重新学习和适应,另外在成长期中的Android系统也会存在不足,这些特性的总结有助于应用的用户体验提升。
milestone 为代表的android 手机
首先我们简单说下谁在用Android的手机。据尼尔森最近数据调查结果显示:
可以得出性别差异,男性更倾向买Android手机。这也给Android 带来了个性色彩的定义:技术、工程、规矩,理性。
另外,我们可以认为使用Android手机的用户有一大部分有使用symbian的历史。可以理解用户习惯symbian 系统在底部安排功能按钮和菜单的习惯。
交互设计上有个简单原则叫 don’t make me think,但是使用Android手机后,会让你感觉it makes me think a lot。对比norman定义的交互原则,我给Android打了个分数(满分100):
可见Visibility- can is see it? | 50 |
反馈Feedback – what is it doing now? | 80 |
表意Affordance – how do I use it? | 60 |
导航Mapping – where am 1 and where can I go? | 60 |
约束Constraint – why can’t I do that? | 80 |
一致Consistency – this is familiar | 40 |
因为menu等元素让位于屏幕空间,相比iPhone,用户是很少能全面了解页面功能的,必须先点击menu键展示更多的功能,所以可见性并不好;而由于上文中提到的多版本,多变种,多屏幕,多应用,多用户的现状,一致性是个很严重的问题。
在分析之前,我总结了5条交互设计的原则:
—————————————————————————————————————-
人作为交互主体与界面客体通过意图动作完成交互,以实现用户某任务。而界面是信息载体在手机上直观传达了用户能做什么,需要怎么做。 下文把Android系统的交互分解如下:
—————————————————————————————————————-
应用的界面构成
对于一个应用来说,从开发的角度来说就是一系列的activity构成了一个应用,从设计的角度来说,应用由一系列的screen和box组成的,他们是应用中信息和操作的载体。
Android和iPhone的对比
对比可以看见Android的title没有承载导航的功能,因为返回的功能给了物理键,目的是节约空间。
Android 的status bar 需要在任何应用中可见,因为承载了通知机制,任务管理等功能。 布局特性是根据操作特性决定的,要追求视觉平衡,另外更重要的要符合手机操作的情景,比如Android智能手机属于全触屏手机,屏幕尺寸需要用户单手握持,我们要达到键盘机单手操作的需要,就需要尽可能把更多的操作放在屏幕的下面,特别是一些紧急应用的功能。 因此我建议把分类tab放置在页面下方,当没有固定button的时候。当两者冲突时优先考虑需要放置在屏幕上的命令按钮。(这也是依据满足最小移动的原则) 下图出现了几种典型的情况,分别是
为什么要出现box的形式呢?原因在于:
下图是box的分类,我们可以看到上下分为有按钮的和没有按钮的情况。另外有种toast的弱提示形式也包含在box中。
各种box
区分不同的对话框在于框内的内容,
在设计box的时候要注意:
上图是一些box案例
跟其它的触屏手机类似,特别强调的是Android中的长按动作在系统中有丰富的应用,是屏幕尺寸限制下的丰富交互的一个捷径。
意图动作实例
意图对象简单来说就是能触发命令的界面元素,是指上文中的动作可以操作的对象,Android手机分为物理对象和屏幕对象两大类。
物理键是Android系统手机的经典标志。
轨迹球。
屏幕对象包括三部分:隐藏的菜单;置于屏幕的命令;状态栏。这三部分都需要用户通过不同的意图动作触发对象以实现和界面的交互。在android系统上别有一番特色。
菜单的三种表现形式
图中包含Android系统中三类菜单表现形式:
全局操作和针对某对象的操作用不同的菜单命令 选项菜单应用于全局,而上下文菜单用于内容中的一项。如图中所示,用户导航到菜单,然后选择一个菜单项来执行一个操作或打开一个对话框。 应自绘需要,安排8个图标菜单的情况下,假如出现1-7个的情况,推荐用下面的排列方式,排列理念就是对称和稳定的金字塔形式。注意把右下角的位置始终留给“退出”命令。
2×4模式下,从1到8的推荐排列形式
上下文菜单可以说是对某元素的次级操作快捷入口,也出现了特殊的交互方式,如下图的横向图标排列形式,这种情况适合命令数量少的情况。 这种情况是把一个item的交互区域分割为2到3个区域,分别是置前或置后的图标配合较长的文字。点击图标浮出如图的上下文菜单,长按文字出现上下文菜单,短按文字出现第一命令。
命令直接置于屏幕上,通常是以文本链接,图标按钮或是文字加图标的形式。屏幕上命令容易被发现,可以直接看见命令。直观的代价是占用用户空间以及可能的视觉杂乱。 这类命令是频繁操作的,屏幕有空间来展示这些命令。在运用这类命令的时候注意信息层次和传达效果。
状态栏承载了任务管理,下载进度,任务通知等功能切换。状态栏里面的通知机制是Android最具特性的一面。通过下拉拖拽的形式打开通知系统,用向上拖拽或返回键退出通知系统。
M9的通知页不是全页面的,有一定的好处
注意:在不同应用中都要方便的从状态栏接收到外部通知。除了全屏的阅读,游戏,下拉的Status bar通知系统不可遮挡的。 下图是手机QQ阅读应用如何利用状态栏的通知系统贯穿在下载管理中的。点击“下载”在状态栏有加入下载提示,下载完成出现提示,并通过通知直接打开刚下载的图书文件。
在手机QQ阅读中对状态栏的运用
和iPhone相比,Android手机是需要插卡来增加手机存储空间。 每次开启要加载,如果没有安装sd卡将出现不能正常使用的情况。设计应用时需要考虑没有SD卡或者没有安装好SD卡的情况。
桌面和应用抽屉
启动应用有很多的方式和位置。延续了PC上windows的特色,用户认为重要的应用会在桌面创建快捷方式。所有的应用将放在应用抽屉中,就是从屏幕底部向上拉出的页面。 对于一个应用都可能存在两个启动位置,这样的交互不同于iPhone的单入口形式,造成的困扰:
注意:在应用开发中要避免多入口,多交互方向的情况。要让用户在确定的位置找到目标对象。
Android手机有重力感应器,能自动横屏和竖屏切换。但并不是所有应用都要去做这个横竖屏适配。因为屏幕多的缘故,给人的效果是不一样的。应该考虑应用的特殊性来特殊对待。
Android手机的屏幕一般较大,应用耗电相当的大,而屏幕电量消耗占了主要部分,开发应用时要注意考虑用户无意的让屏幕常亮,要增加机制自动锁屏,类似游戏中的防沉溺机制。 为节约流量的设计。 耗费流量的应用要设立保护机制,做wifi和gprs的优先判断。在普通网络中最好给用户预先提示。让用户心理有个消费预期。