当Android系统从青春期走向成熟

  在最近,在Nielsen发布的一篇研究数据中表明,目前Android系统的设备已经在数量上超越了iOS系统,因此我们也可以说Android市场的繁荣现在是正如日中天:目前有4.8亿的用户正在使用着Android设备,而每天还有100万个新的设备被激活。这就是说,每三个星期,新激活的Android设备数就能够相当于整个澳大利亚的人口数。

  而为了适应Android市场的快速增长,知名的App们现在也以越来越快的步伐发布着Android的系统版本,比如是Instagram的Android版本仅仅就在10天之内获得了4000的下载安装。虽然这个平台的扩张速度是空前地快,但是目前在市场上,绝大部分的App质量其实并不尽如人意。而在在Google Play也很少有像在iTunes Store一样多高质量的App,而部分的原因,则可能是因为在过去几年中Android快速地度过了它的青春期,从而导致混乱和不稳定,于是,就有很多设计师为了避免这种混乱情况因而选择倾向了iOS平台。

  当然很多系统的问题被夸大其词,其中一些Android的问题在新版本中已经不复存在,针对仍然存在的一些问题,本文提供了一些解决方案,同时也为将要开始设计伟大的Android应用的你提供一些建议。

  第一部分:青春期症状

  许多App的表现不如预期是因为平台的不成熟。即使Android拥有一个强大的实验场所——为制造商和开发者提供了非常自由和开放的环境去创造他们想要创造的App或功能,但并没有很多人愿意在一个如沙盒(Sandbox)的环境下来工作。不过如今,这个沙盒已经逐渐成长为可以承载伟大设计的基础了。接下来的一些例子将为你展示Android如何从青春期变得成熟:

  Google自己的App缺乏一致性

  并不是很久以前,几乎所有Google家自己的Android App几乎每个看起来都不太一样:

  上图分别是Google在2010年五月设计的Action bar模式建议,但在Android2.3版本中的Gallery(相册)应用就忽视了这种设计标准;最下方是在2011年重新设计的该应用Action Bar,不难看到Google自己花了一年多的时间才开始遵循自己的设计指引。

  在Android开发社区中,缺乏以用户为中心的设计理念

  由于自身缺乏一致性,Google并没有给开发者树立一个正确榜样,正是因为这种缺乏一致性的设计指导和模式标准,导致了平台上用户体验较差。好的设计是以人为本的,它利用技术帮人们达成他们的目标。Google并不像另一个极端Apple一样,在最开始反复和开发者强调用户体验的重要性。

   在不同设备以及不同的系统版本之间,有着明显的一致性体验差异

  硬件制造商往往定制自己的系统UI和硬件按钮,这就造成了设备的碎片化,使得测试和质量控制非常困难,在不同设备上设计一致体验的App变得几乎不可能。

  上图可以看到在不同的设备上,连Home键按钮的位置全都不一样。在这个快速增长和不断变化的市场中,对独立开发者来说很难正确的测试应用程序。因此,大多数的应用在真实的使用情景下并不像原先被设计的一样好用,或者干脆缺乏好的设计体验。这些应用仍然在市面上,但不意味着我们也要做这样的应用,Android已经在很多方面得到了改善,足以支持你为广大用户设计一个有一致性体验的App。

  第二部分:Android正在变得成熟

  Android今天的用户体验比以往任何时候都更加强大,这使得App开发者和设计师更容易做出好的应用。当然一些早期问题仍然存在,但大部分问题变得更易处理,有些已经被完全解决了。其中一个很重要的遗留问题是Android市场上仍然很缺乏伟大的App,但是在一个高速成长的系统平台上,设计师和开发者会很愿意去尝试解决这些问题。

  以下几点是一个日渐成熟Android系统为大家提供的:

  更好的应用搜索

  早期的应被搜索被关键字所限制,并且会直接呈现所有搜索结果;新版的Google应用商店提供了功能分类和员工推荐,从而提升了发现应用的途径。如下图所示,新的应用商店提供了更多发现最新最酷应用的方式。

  适当的Android设计指引

  之前,Google并没有为每个应用必须的基本元素提供一些指导方向。自从创建了设计指引,就为应用的设计师和开发者提供了小的设计决策的判断依据,于是乎我们终于可以专注于创造App的价值,并确保在不同设备上的一致性体验,下图是一个网格设计列表实例中的设计指引节选。

  去除了菜单和搜索硬件按钮

  Google开始去除了设备上的硬件按钮,使整个硬件和软件以更加优雅和便捷的方式被使用。

  上图是Google的Nexus 4手机,已经去除了搜索按钮和菜单按钮。当然各式各样的Android设备仍然寻在,例如LG还在生产拥有菜单键的手机,但在某种程度上这种多样性也是为什么Android应用程序能够脱颖而出的主要原因。

  碎片化并不全是坏事

  碎片化也许是Android遗留问题中对设计师和开发者的最大挑战,但这一点也构建了Android的DNA,成为平台体验永恒的一部分。这种多样性为设计人员提供了契机去使App获得在全球范围内尽可能多的用户数量。学会适应这个碎片化的环境也会使你成为一个更好的设计师或开发者,因为你会需要更加广泛的知识和更加高超的技术技巧。所以比起可能获得的成功来说,这是一个值得追求的挑战。下面的部分将重点介绍如何做可以使你的App获得更大的成功。

  第三部分:创建成功Android App的小贴士

   认识Android

  要了解Android,应该先知道如何使用Android系统,并且了解这个系统的用户。最好的方法也许就是买一些不同产家、不同屏幕尺寸甚至不同系统版本的设备来体验。这不仅会帮助你认识用户的多样性,也可以更好的测试你的App。为你的App选择最佳的支持设备,可从Google获取最新的统计数据,选择一个符合你要求的设备。另外,一些独立报告,如 OpenSignal’s August 2012 report也能够帮助你进行设备选择。

  要记住的是,Android系统的更新是由服务提供商控制的,所以,如Google家的Nexus系列就能够更早获得最新的系统版本。于是,拥有一台最新的Nexus设备往往可以让你最先体验平台的最新发布版本。你也可以通过购买二手设备来节约成本,但要在购买前确保它能够运行你需要的Android版本(许多旧设备的系统不支持更新)。

  遵循设计指引

  遵循设计指引将帮助你创建一个感觉更加像“原装”的应用,当然这仅仅是值得这么做的其中一个原因。设计指引还可以帮助你得到以下好处:

  便于App适应于几乎任何设备

  使应用程序使用起来更Android

  提供用户熟悉习惯的UI

  使App开发过程更加容易

  增加应用程序在Google Play市场获得推荐的机会

  遵循Android的导航模式,使用平台原生的导航元素同样能够有利于创建一个跨多终端一致的体验。

  上图是联系人列表在iOS和Android两个系统的界面。为了使用平台原生元素,将搜索和新建联系人操作放置在了底部Action bar上,而不是像iOS中在上部。当然,在跨设备设计时,自定义App遇到的难度会更大,所幸有Google提供的新版设计指引,使得新系统的Android App看起来和4.0版本前创建的应用大为不同。

  理解Android的外观和感觉

  众所周知Google在为了其所有的产品提供一个一致的视觉体验上已经投入了非常多的努力,Android当然是其中之一,Android 4.0引入了自己的风格:简单,平面,干净(Simple, Plain, Clean)——注重功能本身而不是形式感。

  这虽然在一定程度上为开发者和设计师提供了更大的自由度,但同时还是要考虑到Android视觉风格的精妙之处:用更少来表达更多(Saying more with less)。这说明了:简单地从iOS系统复制样式和元素也许不再好使。在发布一个使用旧风格或者包含其他平台特征的视觉元素的全新App的时候,可能会造成用户的反感或负面效果——微软就发生过这样一个例子。浏览Android Niceties是掌握Android风格和找到灵感的好方法。下图是Google的Search App,很好的体现了Android系统的外观风格和感觉。

  还有一个区分你的App的好办法是通过它的图标。与iOS不同,Android的程序图标可以采用任何形状或是形式,用户喜爱漂亮特别的图标,甚至会因此很乐意在不常用到的情况下将你的程序图标放置在首屏上。更多的图标设计指引,参照Icongraphy。下图是一些图标的例子。

  为不同的设备设计

  当设计App的时候,首先要确保它能够在大部分的设备上正常的运行。记住,不仅要适用于不同的屏幕尺寸和屏幕方向,也要注意适用于低亮度的屏幕或者是对比度较差的屏幕,以及速度慢的低配置机器。比如一些便宜的机型只有低分辨率的并且对比度较低的屏幕,这时过小的文字很难被清晰的显示,过大的文字又会显示不下。这时就要避免低对比度的文字和视觉元素伤害用户体验。以下就是一个自适应不同屏幕尺寸文字显示的设计例子。

  还有一些事情可能要注意:

  使用对比较强的文字和元素颜色,比如在重要的元素上避免使用白色或者浅灰色,因为可能在较差的屏幕上会看不见。

  在不同亮度的环境下,不同的屏幕亮度(低亮度、高亮度、自动亮度)设置下检查设计稿。

  即使在使用标准尺寸的时候,要确认文字和UI元素在小屏幕或低分辨率屏幕上的显示足够大;你可以单独为这些屏幕设置特殊的文字或视觉元素显示尺寸。

  为多样性设计的一个很好的案例,详见Sebastian de With 讲述the Alarm App创作过程的文章。

  使用Density-independent(分辨率自适应)定义布局

  确保UI元素在不同分辨率的Android设备上看起来差不多大小是提供一致性体验里很重要的一部分。这看起来是一件非常费力的任务,其实大可不必通过复杂的像素运算来得出每个按钮或字体在每个特定的屏幕上如何显示,可以让设备帮你处理这个问题。如下图所示,是一个标准的图标在不同分辨率设备上的显示效果:官方推荐的按钮尺寸是48像素,在从低到高的4个不同分辨率级别下系统自动处理了显示效果。

  通过Density-independent pixels (DPs)的方式定义尺寸,你需要确保在每个屏幕上显示的视觉元素的物理尺寸一致。详细的设置方式,请查阅Use Density-Independent Pixels。下图是实际使用中被证明很好用的一个各视觉元素的尺寸设置建议。

  为不同的分辨率设计

  为了在几乎所有的Android设备上显示清晰,需要满足四个分辨率:低分辨率(LDPI),中分辨率(MDPI),高分辨率(HDPI)和超高分辨率(XHDPI)。一般从640×960屏幕分辨率开始,然后缩小以适应其他分辨率屏幕,如下图所示。

  MDPI和XHDPI的显示分辨率与苹果iPhone的普通屏和视网膜屏刚好一致。所以,如果你的App有iPhone版本,可以直接使用它的布局排版,甚至可以简单地在iPhone上测试设计效果。当然不要忘了Android特有的外观和感觉。不可忽视的是,一个叫做XXHDPI的标准已经被添加到下一代移动设备中作为支持,这些设备将有大约480 DPI的屏幕。尽管现在还不存在这样的设备,但因为XXHDPI标准目前被使用在如今使用XHDPI的10 英寸平板设备的启动图标上,比如Nexus 10。所以也许需要在设计各视觉元素时提前做好准备将你的HDPI拓展至200%的XXHPI。

  考虑不同的系统版本

  许多Android设备将不能够升级到最新的操作系统了,并且新的系统往往也需要很久的时间才能全面占领市场。随着设备的更新换代,用户会逐渐不满足于过时的应用图标和控件样式。因此,需要尽可能提供最新的体验,如果你打算支持应用程序运行在旧的平台,为这些设备创建一个单独的版本。

  为App提供拓展组件和壁纸

  善于利用Android的一些特殊优势,比如组件(Widgets)、壁纸(Live wallpapers)和消息通知(Notifications)。组件可以让用户在不运行App的时候接收更新,消息推送则可以帮助提升版本更新的安装量。Google为设计师和开发者提供了各种方便通知用户的方式。下图是一些例子,上方是音乐播放器的快速组件,可以让用户方便地进行音乐播放最常用的操作。下方是一个日历应用的组件,让用户可以在首屏桌面上快速滚动查看日程安排。

  Android用户非常喜欢定制他们的设备使其看起来个性化,所以这些组件或是墙纸就会给用户很大的弹性空间来做这些事情。

  测试你所支持的设备

  在应用商店中最为常见的负面评价莫过于在某些承诺的机型上App不能正常运行。所以确保你的程序能够正常运行在最为流行的目标设备上,并且只在你测试过的机型上发布App。否则,就有可能会造成部分用户失望,甚至给予差评。

  同时为平板设备设计

  尽管Android的平板电脑并不如他的竞争对手iPad火爆和流行,但是如果你的目标就是做一个真正跨多终端的Android应用,那就必须同时考虑Android平板了。官方设计指引为平板的UI和界面提供了多窗格布局(Multi-pane Layouts)的设计指引,以满足碎片化设备的统一化体验。平板和手机一样使用同样的图形库,但需要特别考虑平板使用的情景。比如说,相比于手机,人们通常把平板举得离自己眼睛更远,并且输入并没有那么精确。所以平板的UI需要更大的字体,更大的按钮和更多的留白。当然,最后别忘了通过平板应用的质量检查表(Tablet App Quality Checklist)测试一下你的应用。

  综上所述,也许可以给Android一个机会!为Android设计在一开始看起来似乎充满挑战,但是通过以上这些方法和建议,将为一个出色用户体验的真正伟大的应用取得一个良好的开端。所以为这个日渐成熟同时新兴的平台做设计是一件有趣和不断学习的过程,在这个寻找创建伟大App的过程中你也许会掌握一系列的新技术,并发现很有价值的经验。最后,带来一些激发灵感的很不错的Android App:

  The Verge

  doubleTwist Alarm

  Skype

  Evernote

  Foursquare

  Tumblr

  New York Times

  Path

  Endomondo

  Expedia

  *文章翻译自Designing For A Maturing Android

  * 原文链接:http://mobile.smashingmagazine.com/2013/05/08/brave-new-world-designing-for-a-maturing-android/ 原文发布时间:2013.05.08 原文作者:Alex Komarov, Nikita Yermolayev

  *作者更新:While we were writing this article, case study has been published by The Verge about the FacebookHome Application — next big thing for Facebook. But this isn’t about Facebook anymore. Thought this particular application is quite controversial, with limited device support and experience far from perfect, Facebook designers have proven that with enough effort 100% of your ideas can be implemented and delivered on Android with no compromise. They have revealed a great opportunity and may even have marked the beginning of a new trend of creating greater presence on Android.

时间: 2024-12-24 05:11:17

当Android系统从青春期走向成熟的相关文章

《Android应用开发从入门到精通》——第1章,第1.1节认识Android系统

1.1 认识Android系统 Android应用开发从入门到精通 Android一词的本义指"机器人",同时也是Google于2007年11月5日宣布的基于Linux平台的开源手机操作系统的名称,它由Google主导的开放手持设备联盟(Open Handset Alliance)进行维护,该组织的口号是"助力移动设备的变革,以更低廉的价格,为用户提供更强大的功能和更好的体验".该平台由操作系统.中间件.用户界面和应用软件组成. Android系统最初由安迪·鲁宾(

移动操作系统走向成熟:革命性创新难觅踪迹

苹果公司的新一代操作系统iOS7虽然耳目一新,但缺少革命性的新功能导语:美国<福布斯>杂志网络版上周六撰文称,回顾谷歌和苹果公司最近对Android和iOS的升级,不难看出移动操作系统已经走向成熟,发展到了全新的阶段,只能在功能层面展开微创新,难以推出令人振奋的新功能.以下为文章全文:随着新版Android和iOS的相关消息陆续发布,是时候回顾一下这些新系统的特性,以便了解今后的移动行业发展趋势了.然而,真的回顾起来,却发现这两大处于领先地位的操作系统只是在相互追赶,通过略有差异的方法解决相同

Android系统字体规范与应用探索

我们在做Android移动APP设计的时候,字号的选择也是很让人头疼,今天整理了一份有关Android系统字体规范,主要从以下几个方面:方案. 1. 移动设计中与字号有关的基本概念 px:Pixels即像素,基本原色素及其灰度的基本编码. DPI:dots per inch,是印刷上的记量单位,意思是每个英寸上,所能印刷的网点数. PPI:pixels per inch 数字影像的解析度,意思是每英寸所拥有的像素数,即像素密度. PPI = √(长度像素数² + 宽度像素数²) / 屏幕对角线英

迈向高效率时代 国内云计算正在走向成熟

在今年的IDF 2012信息技术峰会上,英特尔公司全球副总裁兼中国区总裁杨叙表示,今年的关键词包括:协作.创新.PC.个人计算.数据中心.互联.云计算等.并重点突出了互联.个人计算和云计算.由此可见,一个全新的数字化互联时代已经到来. 智能设备推动了互联网和数据中心的发展,但爆炸式的增长同样带来了管理与资源分配等方面的诸多问题.面对越来越复杂的问题,云计算应运而生.从三年前开始,云计算在我国的落地之声就不绝于耳,于此同时IT厂商也纷纷推出自己的解决方案来加速云实施.目前,已经有相当一部分大中型企

Android系统截屏的实现(附代码)

1.背景                     写博客快两年了,写了100+的文章,最火的文章也是大家最关注的就是如何实现android系统截屏.其实我们google android_screen_shot就会找到很对办法,但那些都是很多年前的了,在android4.*版本后,android对于源码进行了更正,使得以前的方法都不能够使用.        感谢cjd6568358这名网友,我们一起讨论,最终由他实现了android系统截屏功能,为了让以后想要这个功能的coder可以少走一些弯路,

opengl-OpenGL 在Android系统中的显示问题

问题描述 OpenGL 在Android系统中的显示问题 openGL在android系统中只能全屏显示吗?可以控制让它只在屏幕的某一个部分显示吗

android系统文件下载二次请求

问题描述 android系统文件下载二次请求 应客户要求在通过手机访问系统主页时提供一个文件下载的功能.通过IOS产品.windows下所有浏览器下载都没有问题,但是通过android系统的手机访问下载时会出现两次请求的情况,有的品牌的android手机完全就无法下载,敢问哪位大虾遇到类似的问题,求解决之道. 解决方案 同样的问题,二次请求就不说了,问题是第一次铁定报错.而且还会有几率下载不成功,恼火啊 .....

站长开展SEO以来的感悟 SEO开始走向成熟

还记得,第一次在站长网上发表博文是篇<草根站长日常维护都干啥>.那会儿,依稀记得从事SEO这个岗位三个月有余,受QQ群里向A5投文思潮的影响,于是乎,也果断的投递了第一篇文章,结果因为带了超链接被拒绝,甚是尴尬,紧接着,在第二次投的时候,去除了超链接,文章也纯原创抒写作为一名站长维护文章的一些日常工作.有些欢喜,有些欣慰,更是有些激动,文章通过后,那时候搜索标题,记得前四页那片文章似乎都跟我的差不多,如同火影里鸣人受到认可一般,在第二天又果断的投了<年末大总结 盘点SEO遭遇的囧境>

Android系统service详解

Android存在3大类service, 处于android系统的不同框架层,具体解读如下: 1) init.rc中的service //关键词"service"  name  二进制可执行程序路径 service servicemanager /system/bin/servicemanager class core user system group system critical onrestart restart healthd onrestart restart zygote