`
wangchangshuai0010
  • 浏览: 122414 次
  • 性别: Icon_minigender_1
  • 来自: 青岛
社区版块
存档分类
最新评论

iPhone为什么比Android好

 
阅读更多
曾经在不同场合与很多安卓青探讨过一些或浅或深的知识层面问题,如今想来具备真正独立思考能力与当量知识储备的,也只有一人而己;换言之,绝大部分时候只是对牛弹琴。那么我将从以下七点来说明iPhone 4比Android手机们好在哪里:工业设计,操作系统,屏幕显示,开发环境,生态环境,硬件配置,杂项。

一、工业设计

林徽因当年动身学建筑的原因,按她自己来说是:”建筑是唯一一门将工程与艺术结合至完美的学科。“词句上可能略有偏差。这句话放到现在来看,应该把”唯一“去掉,因为设计学科几乎都有这方面特质。

工业设计本身的效用并不是如绝大部分人所想的,只具备”好看“这一特性。这门学科的水很深,从材料到交互,从人性到科技,却还带着无数的限制(比如材料产能不够或者价格过高,比如要为产品部分特性放弃某些绝妙的思想),可以说拖着汽车跑步也绝对不为过。
苹果在iPhone 4之上的工业设计,精妙绝伦,按乔布斯的说法是”它就和一款老莱卡相机一样美丽“。但它不仅仅于此,它环绕着机身的不锈钢圈,不仅是天线(虽然引发了问题),也是固定机身的梁,同时也减少了内部占用空间,iPhone 3.5寸手机有1420电池,而i9000 4英寸手机只有1500而且稍厚。它两边的玻璃,不仅与IPS屏幕的光学有着最美丽的匹配,也起着防刮的作用(注意苹果从未说过它防摔)。我觉得一个有正常审美的人,在看到iPhone 4之后都必须承认它是人类史上最美丽的工业设计之一。它的设计恰到好处,每一个设计都不拖泥带水,与手机功能息息相关。这就是工业设计的作用。它不仅仅是美观,它还必须是功能。

当然它还有一个特性,那就是营销,也就是工业设计上很臭名昭著的指导原则”有计划的废止制度“。有计划的废止制度,是指”每一两年对产品进行小改变,三到四年对产品进行一次大改变“;它是一直到现在都适用的指导原则。它最臭名之处在于,诱引人们放弃手头上依旧可用的产品去追逐最新的产品,造成大量的资源浪费。但是很明显,它骨子里散发的营销气质是苹果非常看重的。从第一代iPod到iPhone的产品进化,苹果把这项原则用到了极致。

二、操作系统

自苹果收购了乔布斯的NeXT之后,花了六年把它打磨成了Mac OS X;又在2005年左右花了两年半时间,基于它制造了iOS。从各种意义上来说,iOS是一个传统技术的操作系统。它有一个基于微内核Mach的 Darwin内核,有一个叫做Cocoa Touch的运行时,用的是Objective-C这个C语言的超集。而Android在Linux内核之上,集成了一个Java虚拟机Dalvik,整个应用层跑在虚拟机之上,而开发语言用的是Java。

事实上双方的选择都是很有道理的。苹果有Mac OS X十年基础,当然会选择自己最精通的技术,把iOS打造成一个传统系统,也可以无缝链接Mac OS X的开发者资源。而谷歌没有任何操作系统经验,为了要争取最大的开发者资源,他们选择了世界上最大的Java社区。虽然起点相同,但走出的第一步方向就已经截然相反。

究其根底,只在于Java只有自动内存回收,而Objective-C自动与手动内存回收均可(注意iOS只有手动内存回收)。这小小的区别导致,谷歌只能做一个Java虚拟机,而苹果可以继续他们在Mac OS X上的经验。而这个行为导致了两者在系统流畅性上的最大区别。Java由于只有自动内存回收,系统会在任意时间停掉所有进程开始回收内存,这个过程是人类可以感受到的数百毫秒。而iOS由于可以手动管理内存,可以在用户操作的间歇由程序员进行回收,用户不会在频繁使用过程中感受到停顿。在日常使用中这个停顿其实是可以忍的,但是在游戏过程中这个停顿是不可以忍的,比如想像一下一只愤怒的小鸟在空中停顿了零点几秒再继续飞行。

谷歌事实上意识到了这个问题,于是它在Android 2.3版本中大修了这个问题并将之作为一个特性大书特书。且抛开2.3的普及性不谈,单说这个大修的行为,也并没有修好这个问题。于是谷歌抛出了第二个在开发上的修补:引入C/C++ NDK。可以说到了这一步, Android整个内核往上的应用层才有了与iOS抗衡的实力,可惜时间已经过去了近四年,iOS积累了十五年,Android刚刚起步。

而在内核之下呢?基于微内核Mach的Darwin 对比 当今服务器主流Linux又如何?当年Linux创始人曾经与某位牛人吵过一场著名的架,正是关于微内核与内核对比,Linus一直到现在都认为微内核只是纸上谈兵而在现实中解决不了实际问题。在这场吵架之后的岁月,坚持内核的主流系统只剩下Linux一家,而微内核系统已经延展到了基于SVR4的IBM AIX/HP-UX,GNU/Hurd,Mac OS X,Blackberry QNX,Windows(是的,你没有看错)。Time will tell,这句话从来都没有错。Android三方ROM所困扰的驱动问题,正是Linux内核的最大局限,植根于骨子的病是治不好的。

三、屏幕显示

在2010年WWDC上,乔布斯在介绍那块视网膜屏幕的时候说了一句”We think it(IPS)’s quite a blt better than OLED“,他的理由是”提供了更精准的颜色,以及更大的可视角度“。事实上在流明上也远超。

历数当前的主流Android厂商,HTC和摩托罗拉用的只有TFT/SLCD这些非常便宜的屏幕(当然他们用了所谓qHD高分辨率来吸引眼球),三星拥有自家的Super AMOLED(以及Super AMOLED Plus),LG作为苹果屏幕提供商也有几款高端机型使用了IPS,索尼则是自家的Bravia。以上所有Android屏幕,屏幕质量(IPS/Super AMOLED Plus)勉强可以并肩的分辨率(800*480 vs 960*640)远远不如,分辨率勉强可以并肩则屏幕质量远远不如。

正如乔布斯在WWDC上所说的:”我们建立了这样一个标准,在未来几年内我不认为有竞争对手可以减少哪怕一步差距“。时间飘过一年,还没有人让他说错。

四、开发环境

在第二点操作系统里,已经略有提及两者开发工具差距。下面打算谈谈App Store对比Android Market。

App Store大概已经超过50万应用了,Android Market大约30万,当然这是建立在谷歌根本无审核而苹果严格审核下的,如果去掉一部分Android里面的、壁纸和铃音等垃圾应用相信 Android Market会继续缩水。当然在这么大的数目下,数量已经不是竞争关键,应用质量才是真正的关键。

应用质量如何提升?很俗,钱。开发者有钱,才会有好应用。开源项目很多都是公司或社区付钱给开发者的,而不是绝大部分人想当然都是免费劳动。那么钱从哪里来?当然是消费者,消费者直接购买应用,或点击之上的广告,或游戏内购买道具/服务。一个消费者肯为应用花多少钱,才是能否赚大钱的关键。

很明显的,iOS用户所花的钱远超Android用户,这事其实有很多原因,我也不想一一点明,不然会被人说优越感之类。当然我也不是信口雌黄,调查到处都是。这样的差距,事实上已经表现在开发者对两家平台的态度上。iOS已经成为开发者心目当中的首选平台,因为它之上的用户更愿意购买应用,开发者更愿意用实力来赢取金钱而不是广告。而Android很多相应的应用,要么免费加广告的形式(比如愤怒的小鸟),要么干脆没有(比如到现在都没有的 Instagram)。有人说日常工具实际上需求量并不大,我承认,但谁能保证某一天iOS首发甚至独占的工具就不会进入你的日常工具列表?这样的例子已经出现很多了,比如红极一时的Instagram,比如实用派的EchoEcho等等。

再转向娱乐应用。保持一个平台长久新鲜感的应用,正是娱乐。在iOS上的娱乐应用,无论是数量还是质量都远胜Android。究其原因,一是用户更愿意花钱从而开发者更有激情,二是开发更加便利不需要考虑数百机型。事实上这个世界上大部分正经游戏都是用C++开发的,而Objective-C与C++天生一家的特性吸引了太多游戏开发者(你可以直接用C++给iOS开发游戏),而Android的Java…

无论是开发者的态度,软件的质量以及开发的便利性,iOS都完胜Android。

五、生态环境

所谓生态环境,其实很简单,就是谁能提供更多东西供消费者把玩。iTunes作为全世界可能是第一大的信用卡绑定数字商店(因为亚马逊没有公布过数字),其上的音乐、书籍、电影、电视剧、播客甚至大学教学视频数量都远胜所有竞争对手。
作为竞争对手的惠普、谷歌,根本就没有这样全面的数字商店;而微软、诺基亚,虽然数量较为齐全,却从未获得过多数用户支持(或许是装机量太小,或许是低端用户居多)。

Palm前高管曾经感叹过,智能手机时代得四者得天下:一是生态环境,二是软硬件结合,三是开发者,四是云计算。苹果之所以一直坚持使用iTunes来管理所有iDevice,生态环境正是其中一个原因。为什么Palm要死皮赖脸在iTunes去掉DRM后用iTunes来同步Palm Pre甚至不惜与苹果打官司?为什么微软在Windows Phone 7和Zune之上步iTunes后尘只允许用Zune软件来同步?

生态环境!生态环境!生态环境!生态环境!生态环境!生态环境!生态环境!生态环境!生态环境!生态环境!生态环境!生态环境!生态环境!生态环境!生态环境!Think different。

六、硬件配置

主要是那块SoC芯片配置。在手持设备时代,与PC时代最大的不同就是,PC时代的芯片是由双巨头独占的,他们负责从设计到制造,你只需要购买;而手持设备时代,或者说后PC时代,只有ARM一家寡头,它只负责设计。你把图纸买回去,进行深加工,然后自行制造或联系代工厂。

这儿就有无限的可能性。毕竟从头设计一个架构是非常非常非常麻烦的事,但在已经成熟的架构上再进行加工是相对容易的事。苹果与大部分Android厂商(不包括三星)不同之处在于,苹果和三星自行设计,而其它厂商从三方芯片设计厂商购买成品。这些三方芯片设计厂商包括TI,NV,三星等等。而苹果与三星的不同在于,苹果自己做软件。

是的,苹果是唯一一个既做硬件又做软件的手持设备公司。只有苹果可以在硬件中插入对软件的优化,又可以在软件中用上特制的模块。事情得从苹果一次入股以及两次收购说起。

首先是苹果入股Imagination。Imagination可能大家并不太熟悉,它是一家芯片厂商,出产低功耗显卡。如果说ARM是后PC时代的 Intel/AMD,那么Imagination则是NV/ATI。它出产的PowerVR显卡几乎配置在所有SoC芯片上,iPhone四种机型都使用了PowerVR显卡。苹果又同时收购了两家小芯片厂商,P.A Semi以及Intrinsity,两家均以低功耗芯片著称。

在第一代iPad之上,苹果启用自家芯片,称为A4。基于ARM,集成PowerVR,看上去和当时的主流手机芯片并没有什么不同。但只要你轻轻往里面看一看,你就会发现,什么叫做细节决定成败。前面已经说过,iPhone 4内部工业设计高度集成,电池容量相比4英寸手机也不输,其中A4芯片也是一大功臣。它基于45nm(当时代工最高技艺),使用了3D层叠技术,集成了内存控制芯片,大大减少了占用面积,比上代相比足足少了80%。外观只是一方面,内涵更重要。A4最大的内涵是,它极其省电。待机耗电大约只有竞争对手的 30%,使用耗电更是只有25%-75%。

省电的两大秘密是,收购自P.A Semi的独立唤醒技术,以及Imagination为A4量身定制的VXD375芯片。前者很好理解,也就是不用的东西让它睡着,用着的时候再叫醒。当然轻描淡定的一句话丝毫冲淡不了此架构的复杂度,基于”如果你不能用一句话解释它,你就根本理解得不够透彻“我也不愿再做更多说明。而后者,则是A4区别于其它芯片最大的地方。

一般而言,显卡是用来控制渲染而CPU是用来处理运算的。但是显卡功耗太大,根本不可能一直满负荷运转,大部分情况下芯片们只是以一半甚至更低效率运行。而苹果A4,在只有桌面或视频等2D应用时运用VXD375,而在3D游戏时动用PowerVR显卡。在去年Imagination公司的产品列表上,有两系列视频芯片,一系列负责解码冠名VXD,另一系列负责编码冠名VXE。但是两者型号都是为0结尾,只有苹果A4的VXD是以5结尾。事实上,它也根本不对外出售,可以说是Imagination为苹果A4量身定制的一块专攻2D芯片。它的好处,不仅省电,而且流畅。正是前面所说的,硬件可以为软件所定制,软件可以动用硬件特制模块的好处。

在今年亮相的A5之上,相信也有类似的设计,但是我这里还没有足够资料说明这一点。当然,A5更加没有对手;如果说与A4大体设计相似的芯片还是比较多的话,与A5这样双核ARM双核PowerVR的芯片类似的,几乎绝迹。

七、杂项用户体验

永远见仁见智,如果再提到用户界面隐喻相信又是新一轮争论。但是有两点很明显,iOS系统流畅度与触控精准度远超所有竞争对手,有视频测试为证。

摄像头:摄影是光的艺术。一味追求像素点但拍出来的照片却因为光线问题满是噪点,这是iPhone大部分对手的通病。关于iPhone所用的镜头优越性在2010 WWDC有完整论述,可以去找来看。

在他看来,苹果不只是一家科技公司,也不是一家人文公司,而是一家注重科技与人文结合的公司。他认为,人们在这样的时代讨论着速度、内存、硬盘而不去关注人真正需要的东西,不去注重自己的产品能够带给人们什么,是完全错误的。科技与人文结合,植根于苹果的用户体验、苹果的工业设计,植根于苹果的每一根骨头,植根于苹果追求完美的DNA。

在我的人生里面,见识过无数牛鬼蛇神妖魔鬼怪标榜自己是完美主义。但在他们的人生当中,我却从未发现他们拥有过自信但不固执的心态来不断修正着自己的价值观,而是一次次中庸的妥协;你从未追求过,从未争取过,从未付出过,又怎么会轻而易举的得到呢?人类史上,曾经有过一次又一次又一次又一次乃至无数次完美理念的失败,原因也许正如陈升在《拿起来放下》里面所唱的:”这个世界变成这样,没有人没有人是无辜的。“

人生是脚印,不是口水。但愿你能真正走在完美主义的道路上,或者如果不愿走,也请不要诋毁追求完美的人。

分享到:
评论

相关推荐

    iPhone4/Android手机功能用户测试需求分解文档

    这份文档是iPhone4部分是我分解的,Android部分是我下属分解后我修改的,用于普通用户检验新/旧手机的功能点指导,主要侧重于功能点的测试,不涉及功能点的性能测试... 文档虽小,但是前前后后也花了两三个月才完成的,...

    Android手机通讯录导入iPhone教程

    ### Android手机通讯录导入iPhone教程:详尽指南 在当今多设备共存的时代,从一款智能手机切换到另一款,尤其是在不同操作系统之间切换时,数据迁移成为了一项必要但有时令人头疼的任务。尤其对于通讯录这样的核心...

    android仿iphone下拉刷新控件

    在Android开发中,为了提供与iOS类似的用户体验,开发者经常需要实现一种叫做“下拉刷新”(Pull-to-Refresh)的功能,这在iPhone设备上是非常常见的交互模式。本篇将详细介绍如何在Android应用中创建一个仿iPhone...

    Android、iPhone、Windows Phone手机网页及网站设计 最佳实践与设计精粹

    Android、iPhone、Windows Phone手机网页及网站设计 最佳实践与设计精粹 pdf扫描版

    Iphone与Android 对比分析浅谈

    Iphone与Android 对比分析浅谈(PDF 8页)

    Android仿iphone-气泡短信-DEMO.zip

    "Android仿iphone-气泡短信-DEMO.zip" 这个标题表明这是一个针对Android平台的开发项目,其目标是模仿iPhone的气泡短信效果。气泡短信是iOS系统中一种常见的对话界面设计,以气泡的形式展示聊天内容,使用户在视觉上...

    css android iphone mtk

    css android iphone mtk css android iphone mtk css android iphone mtk css android iphone mtk css android iphone mtk

    仿iPhone的android圆环旋转按钮菜单

    "仿iPhone的Android圆环旋转按钮菜单"就是一个这样的例子,它借鉴了iPhone的一些交互元素,并将其转化为适用于Android平台的独特控件。这个菜单效果能吸引用户,增强应用程序的趣味性和互动性。 圆环旋转菜单通常由...

    Android类似iphone的选择时间,很有用

    在Android开发中,实现一个类似iPhone的时间选择器可以极大地提升用户体验。这个功能允许用户通过直观的界面来选择特定的时间,通常包括小时和分钟。在iPhone上,这种选择器以一个可滚动的圆环形式呈现,而在Android...

    Android 仿iPhone UIActionSheet控件效果很好用

    在Android开发中,为了提供与iOS相似的用户体验,开发者经常需要实现类似iPhone的UI组件。在iOS中,UIActionSheet是一种常见的控件,用于展示一系列可供用户选择的选项,通常在底部弹出。而在Android中,我们可以...

    Android手机实现 iphone qq在线

    在Android手机上实现类似iPhone QQ在线的状态,主要是通过模拟iPhone QQ的头像和状态信息来达到视觉上的相似效果。以下是一步步详细的操作步骤: 1. **获取iPhone QQ图标**:首先,你需要找到一个iPhone QQ的图标,...

    仿造iPhone dTableView 接口开发的Android TableGroupView

    本话题将深入探讨如何仿造iPhone中的dTableView接口,创建一个名为TableGroupView的Android组件,以此来实现分组表格视图的功能。在Android中,ListView是一个常见的列表展示控件,但在实现更复杂的需求,如带有分组...

    在android主界面模拟iphone的bar

    在Android平台上,模拟iPhone的bar是一项有趣的挑战,它涉及到对用户界面(UI)设计的理解以及对Android系统特性的深入挖掘。这个项目的核心是创建一个类似于iPhone底部Dock栏的组件,该组件包含可拖动的快捷方式,...

    Android Iphone QQ 在线

    然而,这个“Android Iphone QQ 在线”功能则提供了更进一步的选择,它可以让Android用户在不改变实际使用的设备情况下,让他们的在线状态显示为使用的是iPhoneQQ。这可能对那些希望保持隐私或出于其他原因不想暴露...

    android 仿iphone滑动控件

    在Android开发中,为了提供与iOS相似的用户体验,开发者经常需要创建自定义控件来模拟iPhone的特定功能。本项目就是一个实例,它实现了一个仿iPhone的滑动控件,特别适用于展示时间或选项选择,就像HTC设备上的时间...

    Android开发 仿iPhone风格对话框示例源码

    Android开发 仿iPhone风格对话框示例源码 这个对话框完全继承、仿照AlertDialog,只是实现了自定义效果。 另外,没有实现setIcon,因为iphone中的对话框多数都没有图标。 附件包含例子、jar包、jar包源码。

    Android 源码高仿IPhone锁屏.rar

    在Android应用开发中,"Android 源码高仿IPhone锁屏" 是一个项目,旨在实现一个类似于iPhone的锁屏界面。这个源码库可以帮助开发者深入理解Android系统的UI设计和交互逻辑,同时提供了一个实战性的学习案例。下面将...

Global site tag (gtag.js) - Google Analytics