注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

Loser'sCounterAttack

接纳万物,融合周边,无畏无愧做自己

 
 
 

日志

 
 

知识普及,为什么Android不如iOS那么顺滑呢?接下来就是揭开秘密<转自乐蛙论坛>  

2013-08-31 22:00:39|  分类: 那些烦人却难舍的 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
很多 Android 手机的配置并不比 iPhone 要低,目前,大多数 Andorid 手机的RAM都有 1GB,而 iPhone 4S 只有 512MB RAM,但用过 iPhone 的人都知道 Android 手机在使用的时候总感觉没有那么顺滑,究竟为什么会出现这种现象呢? 

一位软件工程师和前 Google 实习生 Andrew 
Munn解释说是因为 Android 系统 UI 效率低下的框架设计的问题。

  不过,这个实习生 Andrew Munn 
是一个软件工程专业的本科毕业生,他在 Android 团队并没有在框架团队工作,也没有看过 Android 渲染的源代码,因此他所说的未必是 100% 
准确。并且他也曾经Windows Phone 团队工作过,因此可能会不自觉的对 Android 产生偏见。以下就是他对 Android 为什么没有 iOS 
流畅体验的看法。

Android 没有 iOS 流畅的原因并非 Java GC 导致暂停,也不是因为 Android 运行的是 Java 编译的 
bytecode 而 iOS 运行的 native code,根本的原因是,iOS 的 UI 渲染采用实时优先级,而 Android 的 UI 
渲染遵循传统电脑模式的主线程普通优先级。

  这听起来似乎很抽象和难以理解,但大家可以尝试一下,使用你的 iPad 或者 
iPhone,打开 
Safari,然后加载一个复杂的网页,例如新浪网首页,当网页加载到一半的时候,把你的手指放在屏幕上,并且四处移动,你会发现所有的渲染立刻停止,在你拿开手指前,网页永远也不会继续加载。


   而在 Android 设备上重复这个操作,你会发现,浏览器会继续尝试加载页面并渲染 HTML,试图多任务同时进行,因此对于 Android 
来说,一个高效的双核处理器是很重要的,这也就是 Galaxy S II 能够非常平滑的原因。

  在 iOS 中 UI 
渲染过程具有绝对的优先等级,当用户接触到 iPhone 的触摸屏后,iOS 中所有的进程都将停止,UI 线程拦截了所有的事件,系统会将所有资源用于渲染 UI 
过程,以保证用户界面的实时渲染优先级。而在 Android 系统中 UI 渲染过程的优先级别却没有那么高,也就是说当你触摸 Android 
手机屏幕的时候,系统后台的程序并没有停止,仍然在继续运行之中,比如下载和查收短信,这样系统 UI 获得的资源就不够,这就是 Android 
系统不流畅的原因。

   由于这个原因,新发布的 Galaxy Nexus,甚至配备四核处理器的话说 EeePad 
Transformer Prime 平板电脑都无法保证顺滑的操作体验,这些设备只能与 3 年前的 iPhone 顺滑程度相比,那么 Android 
团队为什么不从根本解决这个问题呢?

   除了 UI 渲染之外,Android 缺乏有效的的硬件加速也是一个原因,在不同的 
Android 
手机上的硬件加速存在巨大差异,而苹果是唯一一个既做硬件又做软件的手持设备公司,只有苹果可以在硬件中插入对软件的优化,使得基于苹果芯片的设备不仅省电,而且流畅。


  实际上,Android 的开发工作在第一代 iPhone 发布之前就已经开始了,原始 Android 
原型体被设计成为使用键盘手机的设备,也就是黑莓手机的竞争对手。UI 渲染优先级别在有键盘的手机上并没有那么重要。

   在 
iPhone 发布之后,Android 小组为了快速推出能与 iPhone 竞争的产品,迅速将 Android 改成触摸屏手机系统,但那时重写 UI 
框架已经不可能了。因为如果这样 Android 应用市场中的所有程序将变得不可用,这种关系将一直处于恶性循环之中。 

  评论这张
 
阅读(154)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017