月光博客 » 软件应用 » 为什么Android没有iOS那么顺滑

为什么Android没有iOS那么顺滑

  虽然很多Android手机的配置都比iPhone要高,比如大多数Andorid手机的内存都有1GB,而iPhone 4S只有512MB内存,但用过iPhone的人都知道Android手机在使用的时候总感觉没有那么顺滑,究竟为什么会出现这种现象呢?一位软件工程师和前Google实习生Andrew Munn解释说是因为Android系统UI效率低下的框架设计的问题。

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

Android平板电脑

  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应用市场中的所有程序将变得不可用,这种关系将一直处于恶性循环之中。

  英文原文:Follow up to “Android graphics true facts”, or The Reason Android is Laggy

  参考阅读:iPhone为什么比Android好

顶一下 ▲()   踩一下 ▼()

相关文章

  1. 1
    omf   说道:
    我表示这个实习生的伪科学真是编的好

    按照那个实习生的说法,android的ui不流畅是因为响应UI处理的优先级不够,而google不改进的原因是因为怕影响到已经发布的应用程序。我作为设计了6年软件的人表示压力山大啊。

    这人根本不懂ios和android的进程控制机制,且不说ios中ui有最高优先级(笑啊,ios什么时候UI有最高级了,明明是系统中断才是最高),竟然说出了android触摸UI时后台进程保持运行这样的荒谬的事情,我都怀疑他是不是在google呆过。

    即便他说的UI优先级有理,也不可能出现改变优先级就会使得程序进入恶性循环这种情况。了解android系统架构应该知道负责图形处理(关于优先级部分)的是位于android系统的倒数第二层,也就是内核的上一级,而且android的设计是层与层之前低耦合的,每层对于下一层的依赖仅通过接口来调用,而层内的变化根本不会影响到层外行为。

    说简单一点,就如同你去银行柜台办事,你办外汇就去外汇窗口,债券就去债券窗口,而银行内部怎么处理你的请求是他们的事,你只需要提交你的数据并接收结果即可,银行内部员工变动也不会影响你的事务办理。
    如果真如这个实习生所说,是UI框架处理优先级的问题,google大可以轻轻松松直接提高优先级,绝不会影响到现有任何程序,因为目前没有任何程序能绕过android的程序框架直接调用到UI下层的方法,因此下层的改进也不会对上层造成兼容性的不适。而且也不增加什么生产成本

    但为什么还是感觉android比ios卡?

    我觉得这是人云亦云后的“被变卡”感觉(很多人在概念空白时先入为主的被教唆到android比ios卡,不如ios,而且听多了这样的话后自然自己的感觉就不准了),以至于出现了N种关于android为什么不如ios的“科学、内幕”解释。我觉得除了辩证还要用发展的眼光来分析这个问题。

    在早期,android的优化的确不如ios,这源自于产品的设计理念和年代(android本身是07年才被收购的一个公司,之前这个系统根本没有得到实际的验证,而ios始终是在apple下从mac时代起就被打造的)。
    而硬件也远没有iphone强,加上开放免费,什么鱼龙混杂的制造商都加入进来,元器件供应商也是水很深,造成产品水平参差不齐。很多人对android和ios的差距的认识也是从那时才建立的,而看iphone,一年才出一款机器,无论软件还是硬件,从选择供应商到制作,有足够的周期,都是精挑细琢。

    也就是说,android阵营从低端到高端都有,且低端又多又乱所谓的高端少而不精,而iphone就一个高端,这就如田忌赛马,老拿人家优秀的比垃圾的,自然而然口碑也就落成了android不如ios的一个大范围印象。其实这个时代跟ios产品比较,也的确是android的东西不如iphone做得好。

    但是近年来android的机器硬件基本上已经超过了iphone但为什么还是觉得比ios卡?除了上述的心理因素遗留之外,我个人觉得其实这无关android本身,并不是os优化这么简单的事。而是硬件问题,其实没有人特别在意这个问题,但是我想说这就如同显示器的响应时间,响应时间快,在播放时就会流畅没有拖影。

    电容屏也有响应时间,而且对工作环境电压要求很高,普通的电容板本身响应就比较慢,大概才50~100ms,而且在电压不稳定时反应更慢,而iphone4的电容板响应时间在10~20ms,差距近80ms说是不到十分之一秒,但是在实际体验时这就能影响到人们的直觉。
    另一个因素在于触屏的玻璃材质,硬度越高越顺滑,这是根据阻尼系数和摩擦系数可以测出的。同是镜面的情况下,硬度越高的材质在摸上去的时候更顺滑。iphone用的是大猩猩,硬度达到7,裸身时本身触感就顺滑,没有拖沓感,再加上大多数买iphone的人贴膜都会比较下本钱(我贴膜花了129),贴膜也会影响到触感。
    在普观android手机,用上大猩猩的寥寥无几,再肯贴好膜的更是少。在手感上也比iphone要差了。

    就我个人用iphone4和兔子这么久以来,亲身体会是,android的UI其实缺少过度动画,比如在界面切换时的细节(仔细看,ios的界面切换时除了窗口会移动,标题栏和上面的控件都会以不同的速率在移动,感觉很动感精致,如同流水般),这样在操作时造成了突兀感。实际上从触摸角度来讲,我觉得兔子没有明显的差异。而且明显的感觉是,如果iphone有后台程序,或者运行过较多程序之后,哪怕是普通的界面切换也会有卡顿感觉,很明显的。
    jackie 于 2011-12-8 13:16:00 回复
    这个回复很有道理。 前面说的进程优先级确实无法理解,用过Windows的都知道在进程管理器里面是可以实时的修改某个进程的优先级的,也没说改变优先级之后软件就出错了。

    系统的反应时间确实由各种因素影响的,首先就是屏幕的响应速度,我用VirtualBox装Android模拟器,在模拟器里用鼠标点击模拟tap事件,确实比真机要快很多。 我主机性能很好,所以可以认为是高档的Android手机表现,如果触摸屏的响应速度能和鼠标点击响应速度一致的话,那么肯定也可以和虚拟机里的Android一样流畅

    转换的动画也会给人慢的感觉,所以感觉默认的动画效果不明智,还不如干干净净的直接切换好
    kjtempuser 于 2011-12-8 15:56:12 回复
    其实在android3.0以下界面绘制都不支持gpu渲染,这才是主要原因。在你应用里加上android:hardwareAccelerated="true"和不加然后在真机上试验下效果就知道。android底层的2d绘图是用的skia图形库。
    gluttony 于 2011-12-10 2:28:48 回复
    android屏幕硬件响应程度高了也没用,驱动程序对采样距离小于十几的点就丢弃了,准确度比iOS差远了。android UI的下层skia以前的发展重点一直是为google chrome提供硬件加速,honeycomb的硬件加速只是半支持,ics才完全支持了。
    vanxining 于 2011-12-15 10:22:37 回复
    感觉这个和为什么Linux的图形表现远逊于Windows一样。
    Windows将GUI做到了内核之中,Linux只是把GUI当做一个普通的应用程序,孰快孰慢还用说吗?
    这不是什么优先级的问题,而是每次系统调用都要陷进内核,导致性能大幅降低。
    大头龙仔 于 2011-12-17 18:16:38 回复
    有道理。
    其实看到这个问题,我第一时间想到Linux与Windows的UI的一些区别,使得Linux在UI渲染上有很多劣势
    虽然苹果的UI也发展自UNIX,但其专注这个领域很久,功底应该很足够,应该弥补了LinuxUI上的诸多不足,所以可以做得更好
    上面是小弟的一些浅见
    打个酱油 于 2012-5-28 12:32:52 回复
    偶尔翻到此文,读了1楼的回复,觉得有点矫情了。你说的哪些也只是猜测,在没有深入的研究过android核心代码情况下,用自己的猜想指责别人的猜想,不过是五十步笑百步罢了。
    android肯定不会比iphone流畅,很简单,最优的用户体验一定是软硬件共同努力、紧密协作的结果,封闭与开放从来不是一个技术问题,而是一个哲学问题,所以,理念的差异导致了两个系统的不同表现
    jeff 于 2013-5-7 20:41:20 回复
    设计6年软件就你这水平?人家说的进程优先级,你把中断也扯进来?中断和进程完全是两码事。还有人家说的是UI动画的顺滑,你偷换概念,搞成屏幕的顺滑程度。。
    支持(68反对(26回复
  1. 2
    小小飞天1982   说道:
    原來如此…並不是系統的本身運算機制好啊!
    支持(29反对(8回复
  1. 3
    dj   说道:
    前面那段声明真白痴...这种技术问题根本和学历无关,而且只要讲的有道理,他在那个团队工作根本不重要。

    支持(31反对(12回复
  1. 4
    梁巨民   说道:
    不懂技术不要乱说。 后台进程都停止,用于渲染支持的数据哪来?看待事物不要简单的好象自己发现了个新大陆一样,就某一点发表评论。换句话,不要当那些Google工程师是傻X,而你是哥伦布。
    支持(25反对(10回复
  1. 5
    squallssck   说道:
    选择Java肯定是google经过深思熟虑的抉择,先说能确定的优势,
    Java有跨平台优势,手机的硬件可能千差万别,Java软件可以只出一套执行档。而C/C++需要针对机型出专用的编译版。
    Java有大量人员优势,几乎不用重复学习就能做android。
    Java天生是做应用的语言,和C/C++不同,Java的语言和类库都是多年积累的、应用最需要的常用功能。


    关于性能,说些个人看法。
    越是应用,新创意的成分可能越多,定式越少。这时候用一些宽松的语言越能快速的实现产品。
    相反没有创意的复制,才需要高效的语言。比如压缩算法-视频编码、比如3d绘制算法,都是专家组总结的最佳算法,没有创意只需要实现,这时就需要最高效的语言最大限度的发挥cpu,所以这里用c都不够,甚至要汇编SIMD,甚至要电路硬件解码。
    有创意的东西、特别是新东西、还没来得及形成定式,这时需要一些很灵活的语言,比如网页网站一日数变,甚至Java都不够灵活,需要更灵活的脚本语言python、php之类才合用。
    总之,Java是个灵活和性能的一种折中,不够最快但够快,不是最灵活但够灵活。所以才适合做这些应用软件。
    Chi 于 2013-2-14 1:19:07 回复
    说得对,每个语言都有他的定位。以前一直用c++和汇编,现在是c++和脚本。性能很重要,开发速度也很重要
    支持(23反对(10回复
  1. 6
    蓝客密探   说道:
    看好Android,不过IOS确实不错。
    支持(18反对(6回复
  1. 7
    南通PPT   说道:
    原来是这样,原理就这么简单?
    支持(21反对(9回复
  1. 8
    onlo   说道:
    虽然不是很懂 当我感觉硬件2D加速肯定占了绝大部分原因...
    比如
    opera mobile在cpu不是非常强劲的nook color上明显比其他的浏览器滑动流畅...
    QQ阅读 翻页和切换动画的时候也比自带的阅读器和掌上书院什么的帧率要高...
    支持(20反对(10回复
  1. 9
    冷风   说道:
    md,不让我留言
    支持(18反对(8回复
  1. 10
    yantaiyuyifan   说道:
    其实miui和touchwiz这样的启动器不比ios慢
    支持(23反对(15回复
  1. 11
    四川人   说道:
    好像说的不对,iphone在加载网页的时候,我不管怎么拖动界面,他还是在加载iphone4s
    支持(21反对(14回复
  1. 12
    windstorm   说道:
    这篇文章翻译得太不细致,很多地方曲解了Munn的原意。
    支持(22反对(15回复
  1. 13
    crazygao   说道:
    只有一个地方一针见血,就是硬件植入问题,Android内核做的很干净,单内核对任意应用都保持极高效率,ios则是微内核,启动时候就有加速的东西在跑,把程序软件硬件弄到极致。

    如果拼UI简直就是Windows和Linux打架一样……,终端用户终归是喜欢这些华丽花哨的东西,所以,Android这点上失策了啊。
    支持(15反对(8回复
  1. 14
    三好市民   说道:
    前戏不够啦..
    支持(19反对(14回复
  1. 15
    小田小盆友   说道:
    Android系统的应用都是运行在Java虚拟机上,不是靠硬件直接引导,所以非常耗费硬件资源,而Android手机之所以在硬件上飞速发展和这个有很大关系。
    支持(17反对(12回复
  1. 16
    文森特连   说道:
    原来如此。iPhone原来不支持多任务也是同理,一个时间段集中所有资源干一件事必定优秀!
    支持(23反对(18回复
  1. 17
    Costi   说道:
    所以还有改进的空间?
    支持(16反对(12回复
  1. 18
    我的百分之一   说道:
    原来如此。正准备入手iphone呢
    支持(18反对(14回复
  1. 19
    colortext   说道:
    原来还是摩托罗拉的,不过这样大小的机器现在还是很贵的。
    支持(15反对(11回复
  1. 20
    Gaoomei   说道:
    iPhone是专门针对自己的硬件优化过OS,但android的开放性决定了这种行为不可能执行,厂商不可能投入那么多资金给每个型号都优化,而且,有钱都不会投入。旧型号系统好了,他的新机就卖不出了。不过听说M9有做这方面的优化,听说而已。
    支持(20反对(16回复
  1. 21
    WebClerk   说道:
    这个对用户体验很要紧
    支持(18反对(14回复
  1. 22
    musictv   说道:
    感觉webos还挺顺的~流畅度挺高
    支持(14反对(11回复
  1. 23
    木托盘   说道:
    Android还有这么多缺陷啊,那为什么iphone还要贵起来啊,郁闷
    支持(10反对(7回复
  1. 24
    你身边的IT顾问   说道:
    ios更重视客户体验
    支持(16反对(13回复
  1. 25
    小夙夙   说道:
    自由程度 VS 用户体验
    支持(21反对(18回复
  1. 26
    我爱静电   说道:
    也就是说,再飙硬件,软件做不好,照样没戏。就很程序没优化好,不停的加服务器也无济于事,是一个道理。
    支持(16反对(13回复
  1. 27
    失误英雄   说道:
    安卓还是在能耗和流畅上有些差距,学习了。
    支持(13反对(10回复
  1. 28
    南方第一只兽猪   说道:
    接触到触摸屏后所有的进程全部停止???????????????????????????????
    支持(14反对(11回复
  1. 29
    文森特连   说道:
    其实能听歌就好啦!挂那么多在后台会让系统变慢。又不是PC,手机的CPU和RAM资源有限,挂多了App,很多会自动死掉,相当不稳定,导致Android的体验不佳。现在手机CPU没有上G的,RAM没有个512M真的是不行。
    支持(15反对(12回复
  1. 30
    abc   说道:
    狂汗….大不会骗小不懂….
    谁说你滑动屏幕时候后台线程不会跑 ? ---------你不要那那个webView出来说话…因为你根本不知道 js ,渲染等也是在主线程
    而那些什么qq什么那些叫线程 ?
    支持(12反对(9回复
  1. 31
    拉姆斯菲尔德   说道:
    如此简单的原理?
    支持(13反对(11回复
  1. 32
    霁月人   说道:
    这就是用户体验啊!苹果已经把这方面渗入到各个方面了。
    支持(11反对(9回复
  1. 33
    断了的猫   说道:
    我靠 windows系统也有这功能阿,会动态提高前台程序优先级 为毛安卓没有 胡扯吧?
    支持(10反对(8回复
  1. 34
    lin-公诚勇毅   说道:
    ios设计合理一些,把资源用在重要的方向。用户体验
    支持(16反对(14回复
  1. 35
    fox   说道:
    其实说这么说有什么用呢,技不如人就对了
    支持(12反对(10回复
  1. 36
    静风   说道:
    译者别有用心地把Facebook译成新浪。
    支持(17反对(15回复
  1. 37
    Jc   说道:
    :Android更注重编程模型,iOS更注重用户体验。Android将应用内(进程内)渲染(controls)和进程间渲染(surface flinger)放在了不同的模块、空间,导致动画时线程切换过于频繁,需要更高的性能的芯片才能达到和iOS相同的效果;要配合渲染也变得很复杂,所以在横竖屏切换时没有像iOS那样的转屏动画;
    支持(12反对(10回复
  1. 38
    南宁搬家   说道:
    难怪我在试用的时候,就是偏向于爱疯多一点。iphone 4 或者4S能不能装第三方输入法软件?
    支持(14反对(12回复
  1. 39
    豆枕   说道:
    所以我换了WP7...
    支持(16反对(15回复
  1. 40
    吖希-GZ   说道:
    原来是这样啊,受教了。
    支持(13反对(12回复
  1. 41
    weizhi_li   说道:
    感觉也跟JVM的garbage collector有关吧!相比之下,apple的mac os跟ios同样用的cocoa framework,但是在ios上, apple拿掉了gc。
    支持(14反对(13回复
  1. 42
    larrylyang   说道:
    用户体验是一方面, 最重要的还是内容, 没有内容的板子就是一块板子, android世界里看好亚马逊的kindle fire一统江湖,然后和ipad双雄争霸平板市场
    支持(12反对(11回复
  1. 43
    Riki   说道:
    各种傻X不解释,老子管你什么语言,什么原理,老子手机4核 andriod系统,卡的烦死
    支持(4反对(3回复
  1. 44
    小刀闲游   说道:
    IOS是单线程,当然无法比较了。
    比如,你玩其他的,QQ开着,但必须要退出,点QQ才能收到信息。邮件必须要点那个图标才开始收。
    打开网页,快速的打开4、5个页面,按照安卓的,一会就加载好,可以看了。而IOS不是,当前页面加载,其他几个页面是不动的。
    jichi 于 2011-12-8 10:16:16 回复
    额。。。ios4开始就不是单线程了好不好orz
    mobilesafari设计成那样是为了省内存,尤其是ipad1的内存。ios默认禁用虚拟内存,多开几个tab就内存不足了。
    dk 于 2012-1-10 18:31:13 回复
    ios是单线程的,qq为什么可以后台通知是因为ios自己有一套通知API,这些通知的消息必须走apple的推送服务。其实ios本身可以做多线程,只是没开放接口罢了,播放音乐就是后台线程,可惜你不能利用它来搞其他的,appstore会把你打回去。
    支持(22反对(22回复
  1. 45
    unilex   说道:
    哈,iOS果然。。。
    支持(11反对(11回复
  1. 46
    dos5gw   说道:
    "当用户接触到iPhone的触摸屏后,iOS中所有的进程都将停止" 我笑了, 不知道这个实习生对os的基础知识有多少
    支持(20反对(20回复
  1. 47
    alpslegion   说道:
    还有一个是各家厂商对底层硬件加速功能的支持做不到像苹果一样
    支持(11反对(11回复
  1. 48
    Gargoyler   说道:
    恶性循环了,看来只能靠硬件优化了,不知webOS是怎么处理的
    支持(8反对(8回复
  1. 49
    硅胶制品   说道:
    还是苹果牛啊
    支持(11反对(11回复
  1. 50
    jason   说道:
    路过,都是牛人,可还是没定论
    支持(12反对(12回复
  1. 51
    nosure袁毅鹏   说道:
    汗死,难道就是一个进程调度问题- - 那我都能改了
    支持(12反对(13回复
  1. 52
    编号0404   说道:
    普及知识,之前一直不明白为什么滑动时的流程程度都比不过IOS
    支持(9反对(10回复
  1. 53
    陳大威_E9Studio   说道:
    User的感受优先~
    支持(16反对(17回复
  1. 54
    Switchonann   说道:
    也由於這樣,iPhone不需要1.5G雙核,依然流暢,加上iPhone Apps的規格較嚴謹。雖然我討厭iPhone太exclusive太霸氣,所以我用Android手機,但是這些卻是我欣賞iOS的地方。
    支持(14反对(15回复
  1. 55
    Libo_Chen   说道:
    转:Android UI的架构设计原来不是针对触屏。
    支持(10反对(11回复
  1. 56
    ITMOVIE   说道:
    不知道wp7的流畅度和他们比怎么样
    支持(12反对(13回复
  1. 57
    jackie   说道:
    伪科学啊。。。
    支持(12反对(13回复
  1. 58
    有奖活动   说道:
    1楼的评论才看的我恍然大悟一点,文章倒是看的很纠结。
    不过现在安卓的双核的确实已经很流畅了
    支持(14反对(15回复
  1. 59
    库布里克林奇   说道:
    用户体验决定品牌定位
    支持(12反对(13回复
  1. 60
    行摄天下   说道:
    专业人士不少啊
    支持(11反对(12回复
  1. 61
    welcome   说道:
    iphone4 感觉还没三星同级别的 好用
    支持(13反对(14回复
  1. 62
    隨風闖蕩   说道:
    照此推论的话,第一款G1应该是最流畅的
    支持(10反对(12回复
  1. 63
    电脑虎   说道:
    这一点充分说明:技术NB不如用户体验NB。
    支持(18反对(20回复
  1. 64
    华东V   说道:
    学习学习,就是胎里毛病。
    支持(12反对(14回复
  1. 65
    dream   说道:
    我觉的wp7也超流畅的。
    支持(14反对(16回复
  1. 66
    健康善业   说道:
    文森特连:其实能听歌就好啦!挂那么多在后台会让系统变慢。又不是PC,手机的CPU和RAM资源有限,挂多了App,很多会自动死掉,相当不稳定,导致Android的体验不佳。现在手机CPU没有上G的,RAM没有个512M真的是不行。
    支持(14反对(16回复
  1. 67
    so898   说道:
    我们至今为止都不知道ANDROID用起来那么卡的原因
    支持(12反对(14回复
  1. 68
    疯子超人   说道:
    不只是UI吧?
    支持(9反对(12回复
  1. 69
    driver   说道:
    跟我的猜想一样,有天然的缺陷,再飚硬件也没用。体验这种东西真不会骗人。
    支持(13反对(16回复
  1. 70
    HarrySG   说道:
    这个是扯淡。。。
    支持(6反对(9回复
  1. 71
    小土刀大土b愛執信   说道:
    结构问题,没救了
    支持(11反对(14回复
  1. 72
    mn   说道:
    用简单的语言描述出了复杂难懂的事情,呵呵
    支持(10反对(13回复
  1. 73
    夕泠   说道:
    java的低效行性……好吧……无语了
    支持(8反对(11回复
  1. 74
    吕子熏   说道:
    一个是通过原生指令执行, 一个是通过jvm加载字节码执行(尽管用上jit也会出现一定效率上的问题)。就算是两个平台之间的硬件差异一样,单就执行效率上来说,Android app在运行上也肯定是会低点~~ 这个跟OS本身采用什么样的调度没有直接的关系
    支持(11反对(14回复
  1. 75
    youyuqijun   说道:
    我单核的HTC Desire HD都非常流畅,而且后台同时运行起码十个我安装的程序,我也特意和iphone比过流畅,打开大网页还没我HTC Desire HD顺滑
    支持(12反对(15回复
  1. 76
    洞蝶起舞   说道:
    扯淡,单核A8 1G/800M的ios桌面滑动后台多的时候也会出现卡的现象...
    支持(14反对(18回复
  1. 77
    国通梦想之旅   说道:
    iphone贵,当然要好。哈哈
    支持(14反对(18回复
  1. 78
    时尚精灵   说道:
    喜欢Iphone的那种感觉
    支持(9反对(13回复
  1. 79
    chaseyoung   说道:
    所以某些人别再喷拼硬件了,没啥不好的。
    支持(9反对(13回复
  1. 80
    挨踢小茶   说道:
    的确啊,安卓的机子在用户体验上感觉还是没有苹果做得好。这就是为什么用过苹果机子的人不想用其他品牌的机子一样。我觉得普通用户应该选在IOS,爱折腾的选Android。
    支持(16反对(20回复
  1. 81
    风亦兮   说道:
    应该是采用java编写的原因吧
    支持(8反对(12回复
  1. 82
    lasnino   说道:
    哦。。。原来如此。。。原来以为是ips硬屏的效果。。。
    支持(10反对(14回复
  1. 83
    骑猪猪吹泡泡   说道:
    也不完全是这个原因吧,JAVA的低效性,再说,苹果的封闭式,软硬并施,协调工作很有优势,这是安卓机们无法做到的。硬件环境的不统一。
    支持(10反对(14回复
  1. 84
    蒋嘉润   说道:
    文章关键部分摘录:“原因是Android系统UI的框架设计的问题。原始Android原型体被设计成为使用键盘手机的设备,UI渲染优先级别在有键盘的手机上并没有那么重要。但是在iPhone发布之后,Android小组为了快速推出能与iPhone竞争的产品,迅速将Android改成触摸屏手机系统,但那时重写UI框架已经不可能了”
    支持(8反对(12回复
  1. 85
    马丁靴   说道:
    觉得Android会更完美的
    支持(13反对(17回复
  1. 86
    中频炉   说道:
    安卓系统,我的优点卡哦! 手机固件不怎样! 呵呵
    支持(17反对(21回复
  1. 87
    当冬渐进   说道:
    真的吗?底层任务调度很大的区别啊。
    支持(9反对(14回复
  1. 88
    yang   说道:
    当年买的HTC G1现在运行起来就跟shit一样,连iphone一代都不如!
    我尝试玩了玩同事的iphone1,竟然比现在的nexus one还要先进。
    为了UI的流畅度,也为了满足性价比,我选择了palm pre2,webos就是流畅了,而且还有云同步功能,很爽!
    支持(14反对(19回复
  1. 89
    ubuntuus   说道:
    雙核G14的很流暢啊,這篇文章盡瞎說
    支持(12反对(17回复
  1. 90
    富裕信息网   说道:
    却是这样的 市面上很多号称双核1G内存的安卓机 操作都没有iphone4流程 技术相差甚远啊
    支持(12反对(17回复
  1. 91
    jaybarca   说道:
    有兴趣的应该跑到G+上看了原文,很有想法,但个人不太同意他提出的解决方案
    支持(5反对(10回复
  1. 92
    littlethief   说道:
    不知道,没用过,对于我来说手机仅需实现通话功能!!!!
    支持(17反对(22回复
  1. 93
    youyuqijun   说道:
    我单核的HTC Desire HD都非常流畅,而且后台同时运行起码十个我安装的程序,我也特意和iphone比过流畅,打开大网页还没我HTC Desire HD顺滑,说Android卡的那些人用的手机都是低端或者山寨吧!
    支持(11反对(16回复
  1. 94
    周鑫边走边看   说道:
    所以觉得安卓的反应有点慢..
    支持(10反对(16回复
  1. 95
    叶智明_COTA   说道:
    UI渲染只算其一,底层结构才是两者真正的差距。虽然如此,却不影响山寨智能机的普及。像中国和印度这类国家,是百元智能机的消费大国,移动互联网市场规模正临近爆发点。
    支持(9反对(15回复
  1. 96
    徐建祥   说道:
    完全不敢苟同:1。iOS是伪多任务并发(国内某MTK应用公司为了上市也这么干过,今年因这事被美投行踢爆了),它同时只能干一件事,触摸屏触碰后当然要停止其它程序了;2。UI框架,确切的说屏幕驱动与应用程序几乎毫无关系,软件与硬件之间还有两层,完全可以封装掉而不影响应用;3。最后一句话,乔老
    支持(12反对(18回复
  1. 97
    爱微   说道:
    现在一千多元价位的android机基本上够一般人用了~虽然不太流畅,android的定位是来代替非智能机的和其它的智能机的,不是APPLE。
    支持(10反对(17回复
  1. 98
    理性果仁   说道:
    这些技术问题俺不懂,但是知道一个道理,事实是越辩越明!(不过事实是这句话也不是真理,真是的!这年头什么都不可信,只有自己经过仔细、逻辑性思考,才能最大程度的避免谬论)
    支持(6反对(13回复
  1. 99
    梦无忧睡眠博客   说道:
    苹果是做自己家的产品,安卓做的大众适用,不可能优化的那么细致!
    支持(12反对(19回复
  1. 100
    晨露博客   说道:
    我觉得挺顺滑的啊。。
    支持(9反对(18回复
  1. 101
    StewartHou点me   说道:
    因為Android至今還是個測試版,一定要進過十幾個版本之後才會是個成熟的產品,這就是Google,一個工程師當道的公司,產品的親民度不可能和一個設計師當道的公司比。
    支持(12反对(22回复
  1. 102
    鸡啄米   说道:
    虽然没做过iOS跟Android,但是如果真的仅是优先级的问题,大可调整下优先级,对下层内核不会有影响,没他说的那么麻烦。
    支持(9反对(19回复
  1. 103
    bus801   说道:
    原来如此,难怪各种视频比较都觉得IOS比较流畅
    支持(11反对(22回复
  1. 104
    Jon_Showing   说道:
    不是因为Java虚拟机的效率吗?Google这么强的技术都搞不定的问题,只能是整体架构的问题吧
    支持(5反对(17回复
  1. 105
    跑车图片大全   说道:
    各有特色,个人还是觉得安卓比较爽
    支持(10反对(23回复
  1. 106
    lufercy   说道:
    也就是说只要android想的话,像ios一样的流畅度可以很轻松的实现咯?
    支持(9反对(23回复
  1. 107
    Supelec老吴   说道:
    原来是这个样子~~soga!
    支持(14反对(30回复

发表留言