说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

iOS vs. Android,应用设计该如何对症下药?

HTML文档下载 WORD文档下载 PDF文档下载
从iOS到Android,两大平台应用设计有何不同?又都存在什么样的问题?Android定制性太高,该如何进行UI设计?在CMDN CLUB第28期活动中,咕咚网高级产品经理王磊,从iOS、Android谈起,详解应用设计该如何对症下药。

什么才是优秀的使用体验?这个问题一致困扰着产品经理们。为此,在CMDN俱乐部第28期活动中,咕咚网高级产品经理王磊从《咕咚运动+》的设计过程出发,详谈该如何针对iOS、Android平台的不同操作特性及使用习惯,进行应用设计,将产品的各种特点和功能恰如其分地融入到平台之中。


图:咕咚网高级产品经理 王磊

王磊(@leiup),80后,毕业后就职于微软游戏技术平台,之后加入成都酷玩网络任项目经理。2011年加入了咕咚网,将“首先改善自己的健康状态为目标,给更多的人带来健康的生活方式”作为工作发展方向。《咕咚运动+》手机App的推出,成就了现在的咕咚网和王磊,作为咕咚网产品部的负责人,王磊领导产品团队规划设计更优秀的产品,为用户带来更好的体验。

以下为咕咚网高级产品经理 王磊的演讲实录:

《咕咚运动+》就是一款通过游戏化和社交分享的方式,激励和督促用户真正运动起来的健身软件。利用GPS作为采集数据的主要技术,根据采集的运动数据,计算出卡路里消耗、运动轨迹和距离等信息,用户可以将其以游戏化的方式分享给其他社交网站的好友,让他们一起来激励你。

设计之初:从追求全而广到只做一款App

《咕咚健身》是咕咚网进入移动健身领域的第一款产品,是以手机传感器作为采集数据的主要方式,通过手机设备的重力传感器记录运动数据。当时我们做的时候,界面设计得比较复杂,功能也比较多。因为当时主要是为了满足更多人的需求,所以就做了一个比较复杂的版本。


图:《咕咚健身》vs.《咕咚跑步》

《咕咚跑步》是我们开发的第二款手机App,第一次尝试以GPS为主要采集方式。经过一系列的尝试,我们也有了一个很大的转变——只做一款App,做得简单,让更多人喜欢。并且,也逐渐地摸索出属于我们自己的设计思路,具体如下:

  • 基于手机GPS定位技术,间隔一定距离记录一次位置;
  • 针对Google地图的偏移进行了校正处理,保证路线的准确;
  • 同时获取速度、海拔,计算平均速度、每公里配速等;
  • 根据运动类型,用户个人资料以及速度,计算出卡路里的燃烧;
  • 数据上传到咕咚网服务器,云端存储;
  • 手机端随时随地查看数据;
  • 社交网络分享运动成绩,包括微博、微信、QQ空间等;
  • 各种运动类型,满足用户需求;
  • “约跑”社交模式;实时消息沟通。

跨平台设计:iOS vs. Android

我们最初是进行iOS版本应用的设计,开发比较简单,分辨率、机型也都很固定。当时我们并没有考虑太多,只想着针对市面上一款手机就行了。直到Android崛起,我们才意识到,在中国,Android用户非常多。因此,我们在考虑设计平台时,针对iOS、Android两个不同的平台进行不同的细节体验。


  • 界面UI设计

做iPhone应用时只有一个宽度,不会变,iPhone5的长度变化对我们来说并没有影响,我们关注的是宽度。所以在进行iOS UI设计时,我们只需做一件事,就是将宽度固定好,然后其他的都不用烦。


但做Android却是千奇百怪,让我们很是头痛。即使公司采购50部以上的测试机,仍然会产生各种各样的问题。之前我们出一个版本,在很多Android手机上测试过,我们觉得这个版本应该能适用于任何Android手机。结果发布之后,就有用户反馈说不支持小米2。由此可见,Android的定制性太高,要根据不同的机型进行改造。因此,我们在进行设计时,就会做四套UI,分别对界定的小、中、大、超大进行评估,这样也就可以解决至少80%的问题。

  • 账号登录方式

很多用户使用iPhone有一个习惯,在输入用户名和密码之后,会直接点击右上角的登陆。但Android在帐号、密码之后,却是直接登陆按钮。

  • 不同平台的操作习惯

iPhone和Android在用户体验上有许多细节上的不同,因此,我们进行了一一区分。根据不同平台的操作习惯进行设计,但说起来容易做起来难。像iOS版本的操作习惯,很多操作都是采取滑动,比如说有一个存储用户历史数据的历史页面,在iOS上是左上角有一个编辑,而Android上则是长按。后来,我们也慢慢地摸索出一些经验,在Android方面考虑的事要比iPhone多得多。

  • 性能差异带来的影响

Android手机定制化程度太高,价格从600块至5000块不等,因此,性能肯定存在差异,无论从GPS还是内存角度来讲都是如此。

  • 分辨率不同的适配

进行数据量比较大的交互设计会出现不同的问题,因此,要做网络差异优化的话,就要保证能够在价格比较低的Android手机上正常使用。

  • 针对性放弃动画交互

在iOS平台上做交互设计很容易,但在Android平台上则会考虑到崩溃的问题,因此在Android上,我们便针对性地放弃了一些动画的交互。

  • 语音文件的不同处理

iPhone在播放语音文件时相对流畅,而针对Android则通过对碎片化的语音文件进行完整播放。一旦某个语音文件处理得不好,则会导致整体运行不稳定。

  • 数据交互的不同处理

每一条数据有大有小,如果运行时间长的话,数据就比较大一点。在Android上进行交互时,反应可能会比较慢,并且随时有可能崩溃,因此我们会进行分段数据的处理,点击每一段数据时再读取详细的数据。

  • 网络差异的优化

网络差异化主要针对离线和2G/3G网络,网络的差异会影响用户体验,用户在使用2G网络时,减少一些交互次数,在速度上处理得更加缓和,在运行速率和效率上有所保证,一切以用户体验为核心。

我们所面临的问题

Android版本

  • GPS硬件差异,Android手机型号众多,导致GPS硬件参差不齐,定位速度、准确性有较大偏差;
  • 机能差异导致操作流畅度问题,内存不足导致崩溃;
  • Android系统多元化,软件运行兼容性不强;
  • 分辨率的不统一,造成工作量的增加;

iOS版本

  • 系统版本升级带来的新特性;
  • 机型换代造成的影响,分辨率、尺寸、性能等;

观众:你们的优势是什么?主要靠什么实现盈利?

王磊:一般不爱运动的人最关心的是用了这个软件后有没有效果,像卡路里消耗、配速等都是比较专业的运动人士关心的东西。我们在进行产品设计时考虑的是比较专业的和普通用户,假设一般的白领用户,每天少坐两站地铁,少开两天车,通过这种方式来给自己运动的机会,但这时候也就需要有辅助的东西来记录它,记录了以后可以进行分享。我们希望以这种模式来实现每天运动。


图:咕咚服务全景图:运动社区+手机App+智能配件

如果是专业的运动人士的话,他本来就爱好运动,用这个软件的目的就是为了得出他的成绩。而一般的目的就是,我今天运动了,或者说我要减肥十斤,大家一起来监督一下。

因为我们的App是免费的,因此,我们盈利的主要来源就是配件,这对我们来说也是公司的一个重要发展方向。

(责编/唐小引)


欢迎加入CMDN俱乐部,关注CSDN移动开发者俱乐部微博,共同交流探讨移动开发技术,畅聊移动开发前景。

OpenFeint绝迹后,开源项目OpenKit继续前进 美FDA通过搜索引擎和社交平台预警药品副作用 挖坟三星“眼球追踪技术”背后的技术团队 为什么开发者热衷在Stack Overflow上查阅API文档? Facebook推新News Feed 欲造就“个性化报纸” 女神程序员的一天:暴力测试social爬虫代码 2013IBM云存储路线图:更快,更简单,更安全 二战大数据故事:数学家、物理学家、概率论击败德国潜艇 软件定义网络服务商Pertino B轮融资2000万 Scringo社交组件,让你的应用“热闹”起来! Android开发必备:Eclipse 4.2 SR2版本发布 32场!2013年360HTML5校园行首站告捷 移动周报:不做内容,只钻技术的快播 一周消息树:中国开源发展缓慢的“病因” 百度应用引擎BAE正式开放 新增支持Node.js CloudVelocity,下一个VMware? Buffer创始人谈开发:先验证,后编程! 谷歌可穿戴式产品再度来袭:会说话的鞋子 未来Chrome OS或取得Android般成功 云落地@北京,北京市北斗公共平台或开放API? GitHub再遭攻击 主要服务中断约一小时 移动开发者将有望拥有.app域名使用权 微信将推“游戏中心”?移动互联网入口圈地加剧 美国航空公司首次开放API 并举办“黑客马拉松”编程大赛 谷歌数据中心设计的10条“黄金法则” GitHub时代:为什么我们都在开源 VMware发布Horizon Suite 三款应用打包折扣低 TOP30+应用排行榜:二月份国内外综合榜单 开源是否意味着不需要负任何责任? 微软年度科技展 酷炫技术知多少 图解Hadoop生态系统 在ActiveX中添加自定义事件,急!!!! 快被他气疯了!快来帮我一下! 不能启动sqlagent.exe,出现“找不到Ordinal”的提示?? 一个排列组合的问题,有点难度!!! 在程序中如何得到连接网络的带宽和实际的传输速度? 为什么程序员跳槽频繁? 不知是不是将记录锁住了 关于Win32编程时的位图问题 想找一個單論壇的asp論壇 不知道還能不能找到 字符串乱码&gt 和 &lt 我想在Shape控件中增加一个右键和一个双击功能,应该什么实现啊?? 菜鸟问问题:SQL的简单问题,在线等 那为神仙,做过画电路图的画图软件?里面的电路分析是怎么做的?帮忙指点一下 这个要如何安装呀Microsoft SQL Server 2000 Desktop Engine 小问题,能不能停止响应当前进程去进行别的工作?需要语句! 到小公司求职应该注意什么问题? gethostbyaddr()怎麼用的啊?我這樣用怎麼不行啊? 向大家请教一个简单的问题,见笑了 难题难题,怎么在j2me里面实现在一个java程序里面启动另外一个java程序? 请教oracle的jdbc驱动程序的类路径如何设置? 显示器不停的开关,进不了图形界面了,急。 打开水晶报表时显示“未将对象引用设置到对象的实例”,只有10分,全部送出 矩形坐标 【那个活活的,玩不玩了?】 怎么判断dbgrid中某个单元格的值是否符合要求 急,在线等,英文作业等着交,就剩160分了全给了!(只能放100分,气死我了) 请问大虾:在那里可下载installshield Professional 7及其东方语言包 怎么样把exe的C#项目文件转换成dll的呀?? 今天Broland来我们公司查盗版软件了,散糞 一个女孩问"你帅吗?" , 你想如何说? 向大家请教一个简单的问题,见笑了 卖书! 请高手来看这里的错误!! 怎么判断窗口移出屏幕了? 我树型的事件脚本不执行?还有几个其它问题。请大家帮帮忙! 我们部门原创的顺口溜 如何判断处理事件和委托 在线等待:寻Delphi7中调用Excel表格打印的源程序 大家好,在线调查 原来asp中的recordset 在.net中还能用吗 “参数不足,期待是1”是什么意思? 如何读取一个文本文件的最后一行 将一表中的所有A列和B列的值(varchar型)合并后,添加到C列中。这个SQL语句怎么写? 请教用公式urlopen如何在“另一窗口“打开一页面。 win2000下如何给程序指定program ID 急,急,在VC中如何.sql文件(ORACLE) 我的DW不能启动了,问题解决马上给分100! 高手请进,在线等待! 下了一个手机游戏(JAR、JAD),想在计算机上模拟运行一下,该怎么做? 使用 应用程序组装工具 创建.ear,创建.war 在WAS中安装出现错误 !!! 立即给分 怎样改变由 javaw 打开的*.jar文件的图标? 等腰梯形上底与腰长相等,下底与对角线长相等,则梯形各角度数为? 梯形那道题, 等腰梯形上底(小)=腰长=1.下底等于对角线.求下底请用初二学生学过的方法. 有关梯形的题目 一去二三里的景物是什么 一去二三里觉得村庄的景色怎么样 以小事来承托出家人对自己的爱的作文怎么写? 英语填空,适当形式7J from his accent,he must be from the south. 第二十题,两小题, 一次函数,第20小题求解答 一腔热血勤珍重,洒去尤能化碧涛 什么意思 美试图阻挠土购红旗9阿拉法特死因有新说 排除钋中毒BBC名主播再添性侵罪名 下月受审\"行贿门\"致葛兰素史克第三季度在辽宁舰今年第四次出海 专家称为在冬季西非经货联盟首脑会议在达喀尔开幕潘基文呼吁世界各国与联合国共同应对全黎巴嫩总理宣布立即采取措施制止北部教伦敦股市股指24日上涨美媒曝美无人机行动得到巴默许 巴政府美农民发现两副恐龙骨架 有望拍出20用“三个正确认识”照亮青春梦想长春某中专拆除寝室插座致学生校外“买昱弟说历史丨聂树斌案落幕,废除死刑,白沙打造智慧县域项目 手机端就可查办海南岛本周主打多云天气 14 16日外媒:美联储转向特朗普时代 本周升息四川首个“BOT+政府股权合作”高速19国代表天津研讨地理空间数据管理技为何“逃回北上广”?社科院:小城市干东西部结对子 五大重点发力精准扶贫福建通报8起扶贫领域腐败问题典型案例猎日1931校园超能小子召唤恶魔大人缴枪不杀秧苗仙路带着外挂去修仙玄月飞雪林叶的异界战争大汉天下六界仙尊昭陵旅游永陵旅游裕陵旅游献陵旅游虎峪旅游黄兴路步行街旅游丹霞地貌旅游观澜山水田园农庄旅游富春茶社旅游巨石山旅游茱萸峰旅游
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘