background image

  究其根底,只在于

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“,他的理由是”提供了更精准的颜色,以及更大的可视
角度

“。事实上在流明上也远超。

yixieshi.com

  历数当前的主流

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 会继续缩水。当然在这么大的数目下,数量已经不是竞争关键,

应用质量才是真正的关键。

  应用质量如何提升

?很俗,钱。开发者有钱,才会有好应用。开源项目很多都是公司或社