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

摘要:从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是免费的,因此,我们盈利的主要来源就是配件,这对我们来说也是公司的一个重要发展方向。

www.itbole.net

转载于:https://www.cnblogs.com/itbole/archive/2013/05/30/3107899.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/433505.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

cs8900a网卡驱动--寄存器

1. CS8900内部有一个4k的RAM用于访问其内部寄存器,称为PacketPage。 2. LineCTL 网卡状态设置 从上图看到,此寄存器的6,7位用于设置网卡的收发使能。8,9位用于设置网卡状态。是10BASE-T还是 AUI。下面这图更详细介绍了8&…

jQuery图表插件 JS Charts

JS Charts 是一款免费的基于javascript的轻量级插件,用JS Charts 绘制图表是很轻松地事,因为你只需要关心客户端的脚本。 Loading...Loading...Loading...Loading...Loading...Loading...Loading...Loading...Loading...Loading...Loading...转载于:https://www.cnb…

使用正则把数字前面的符号替换_正则表达式(一) 基本表达式

定义 正则表达式(Regular Expression)用某种模式去匹配一类字符串的公式,主要用来描述字符串匹配的工具。 匹配文本或字符存在不止一个部分满足给定的正则表达式,这是每一个这样的部分都被称为一个匹配。 匹配分为以下三种类型: 形容词性的匹…

jsp思维导图_2019年经济法基础思维导图

参加2019年初级考试的考生们明天可以打印准考证啦时间:2019.4.26-5.5日(传送门:http://kjbm8.mof.gov.cn/ksbm/usercxzkz.jsp)为了帮助大家快速梳理教材考点,下面蓝星职业教育为大家整理了初级会计职称考试各章节思维导图,希望给大…

海量数据持久层解决方案_爱数AnyBackup重磅发布海量非结构化数据超可用解决方案...

海量非结构化数据有三大备份恢复问题一直没有得到有效解决:备份慢、恢复慢、备份数据不可查询。这三大问题已经对行业数字化转型造成了重大阻碍。今天,AnyBackup Family 7线上发布会——重磅发布海量非结构化数据超可用解决方案。AnyBackup以创新超可用技…

wpf 使子ui元素可视区域不超过父元素_对游戏UI设计的一点思考

UI决定了一个游戏的初体验,甚至决定了玩家的初始留存,甚至可以说决定了一个游戏的品质,虽然看起来是表象的,却是直指游戏核心的。简单讲,玩家认可一款游戏永远都是造型场景好,剧情好,画质棒&…

grpc入门到精通_Spring Cloud 从入门到精通(一)Nacos 服务中心初探

点击上方蓝色“Java精选”,选择“设为星标”技术文章第一时间送达!什么是Nacos?Nacos是阿里巴巴开源的项目,是一个更易于帮助构建云原生应用的动态服务发现、配置管理和服务管理平台。Nacos英文全称是Dynamic Naming and Configur…

百度新年贪吃蛇效果

闲来无事&#xff0c;在网上闲逛的时候开到有人说百度蛇年的贪吃蛇logo小游戏不错&#xff0c;于是乎就自己仿照写了一个。&#xff08;注&#xff1a;所有素材都来自百度&#xff09; 效果图 用到的图片 1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional…

贝叶斯公式设b_数据分析经典模型——朴素贝叶斯

编辑导语&#xff1a;做过数据分析的人&#xff0c;想必对贝叶斯模型都不会陌生。贝叶斯预测模型是运用贝叶斯统计进行的一种预测&#xff0c;不同于一般的统计方法&#xff0c;其不仅利用模型信息和数据信息&#xff0c;而且充分利用先验信息。通过实证分析的方法&#xff0c;…

Asterisk使用数据库配置方法

安装&#xff1a; 1、安装 unixODBC unixODBC-devel libtool-ltdl libtool-ltdl-devel &#xff0c;为了使asterisk支持数据库存储&#xff08;必须先安装&#xff09; 2、安装 mysql 并设置好 C_INCLUDE_PATH 和 LD_LIBRARY_PATH 3、从 http://www.asterisk.org/downloads 下载…

linux文件系统_Linux的文件系统简介

inux操作系统的本质可以说就是文件系统的集合&#xff0c;文件系统既包含文件的数据也包含文件系统的结构。在Linux文件系统中&#xff0c;EXT2文件系统、虚拟文件系统、/proc文件系统是三个具有代表性的文件系统。/proc文件系统是一个伪文件系统&#xff0c;它只存在内存当中&…

删除按钮_汪涵拜师学艺第七篇:往来单位查询删除按钮和新增判断的设计!

老师好&#xff01;大家好&#xff01;我叫汪涵&#xff1a;今天给大家分享往来单位查询删除按钮和新增判断的设计&#xff01;在开始具体内容之前&#xff0c;请让我先分享我们的价值观&#xff1a;用自律和勤奋来改变命运&#xff0c;不走捷径&#xff0c;有爱心&#xff0c;…

Ubuntu 12.04(32位)安装Oracle 11g(32位)全过程以及几乎所有问题的解决办法

这两天在Ubuntu上安装Oracle把人折腾毁了&#xff0c;即使照着网上的教程来&#xff0c;还是出了很多问题。好在最后终于搞定了。写出来总结一下&#xff0c;免得以后忘了。 标题注明32位是因为网上教程几乎全是以64位安装为例的&#xff0c;32位系统下照着做是绝对会安装失败的…

解决asterisk sip呼叫 488 no acceptable here

这两天实验了一下asterisk static realtime方案&#xff0c;将sip.conf的信息保存到mysql数据库里。但是呼叫的时候&#xff0c;总是 报 488 no acceptable here。 这是我的sip.conf文件&#xff0c;数据库里和sip.conf文件一模一样&#xff0c;但是就是不行。 [general] c…

关于浏览器模式和文本模式的困惑

什么是浏览器模式和文本模式&#xff1f; 经常使用IE开发者工具的同学&#xff0c;肯定见过浏览器模式和文本模式&#xff0c;对于这两个名词&#xff0c;综合相关文档解释如下&#xff1a; 浏览器模式&#xff08;Browser Mode&#xff09;&#xff0c;用于切换IE针对该网页的…

mysql 关联索引_mysql中关于关联索引的问题——对a,b,c三个字段建立联合索引,那么查询时使用其中的2个作为查询条件,是否还会走索引?...

情况描述&#xff1a;在MySQL的user表中&#xff0c;对a,b,c三个字段建立联合索引&#xff0c;那么查询时使用其中的2个作为查询条件&#xff0c;是否还会走索引&#xff1f;根据查询字段的位置不同来决定&#xff0c;如查询a, a,b a,b,c a,c 都可以走索引的&#…

android学习笔记之ProgressDialog的使用

在很多PC软件或手机软件中&#xff0c;我们都会看见 “加载中...” 类似的对话框&#xff0c;当然&#xff0c;在android应用程序中也是如此。如果我们想在android应用程序中使用这样的效果&#xff0c;那么就需要用到ProgressDialog。首先&#xff0c;我们来看一下ProgressDia…

asterisk 互联问题

asterisk A 和asterisk B互联。 A下面有账户1001&#xff0c;B下面有账户2001 当1001呼叫2001时&#xff0c;B的sip.conf里不能有1001。 当2001呼叫1001时&#xff0c;A的sip.conf里不能有2001。 否则&#xff0c;呼叫无法呼叫成功。 下面为截图 实际和在振铃时&#xff0…

Linux串口编程

.串口概述 常见数据通信方式:并行通信&#xff0c;串行通信 UART的主要操作&#xff1a; >数据发送及接受 >产生中断 >产生波特率 >Loopback模式 >红外模式 >自动流控模式 串口参数的配置主要包括:波特率、数据位、停止位、流控协议…

mysql查当前用户的的命令_mysql命令大全用户管理相关命令

grant 普通数据用户&#xff0c;查询、插入、更新、删除 数据库中所有表数据的权利。grant select on testdb.* to common_user’%’grant insert on testdb.* to common_user’%’grant update on testdb.* to common_user’%’grant delete on testdb.* to common_user’%’或…