Board logo

标题: 这消息没人发?不科学啊:从未如此流畅! Android 4.4 ART模式体验 [打印本页]

作者: ZENITHknight    时间: 2013-12-2 23:16     标题: 这消息没人发?不科学啊:从未如此流畅! Android 4.4 ART模式体验

posted by wap, platform: Safari

Android ART模式,顺滑度媲美iphone
iphone最后的遮羞布已被攻破,Android必将统治世界!是不是这样?



Android 4.4系统最大的亮点莫过于针对RAM的占用进行了深度的优化,以至于谷歌官方宣称运行内存仅有512MB的老款手机,同样可以流畅运行Android 4.4系统,这说明谷歌已经对该系统有了充分的信心。然而这一切是如何实现的?为什么曾经需要大内存才能保证系统流畅,现在不需要了呢?这一切还要从最新的ART模式说起。

ART模式究竟是什么?ART模式是Android runtime的简称。它与传统的安卓Dalvik模式究竟有什么区别?它究竟好在哪?其实在Android 4.2以前,安卓手机系统的应用程序均在Dalvik Java的虚拟机上运行,这种运行模式是还要依靠一个编译器来实现与应用程序的沟通。应程序每次运行时,都需要将程序内的代码即使转变为机器码才能运行,这无形中多附加了一道手续,这就造成了耗电相对较快、占用内存大、即使是旗舰机用久了也会卡顿严重的现象。

相比较而言ART模式就很好的解决了这个问题,通过在安装应用程序时,自动对程序进行代码预读取编译,让程序直接编译成机器语言,免去了Dalvik模式要时时转换代码,实现高效率、省电、占用更低的系统内存、手机运行流畅。但凡事总有正反两面,ART在解决了该问题的同时,同时也有如:会占用略高一些的存储空间、安装程序时要相比普通Dalvik模式要长一些时间来实现预编译。而现在我们就来实际体验下ART模式,看看它究竟是否值得我们的期待。

总结:
通过编实际使用的几天下来,在刚刚切换到ART模式下,其实并没有太多的感觉,觉得一切流畅与速度,都是理所应当的。但当切换回Dalvik模式时,滑动桌面的一霎那就知道究竟差在哪里。ART模式下,手指与屏幕的滑动可以说到了极其流畅的底部,基本做到了手指滑动到哪里,屏幕显示就跟着到哪里。如果单就滑动时跟手的流畅度而言,iOS系统是9分的话,Nexus 5的ART系统小编给打8.9分。他们之间几乎已经没有太大的区别了。
而关于ART模式与Dalvik究竟有什么本质的不同,打个比方就明白了。Dalvik模式像是一台折叠自行车,每次骑之前都要组装后才能上路。而ART模式就是一个已经装好的自行车,直接就能上车走人。所以ART模式在效率上肯定是要好于Dalvik这已经基本毫无悬念,我们目前能做的就是耐心等待应用厂商对程序进行优化,以此适配ART模式,好有一种全新的体验。

原帖:http://news.mydrivers.com/1/284/284863.htm
作者: 旨旨    时间: 2013-12-2 23:23

posted by wap, platform: Samsung

art模式下没办法用神器xposed
作者: godzillaqqq    时间: 2013-12-2 23:24

这个应该不能算火星,虽然我已经用了快三星期了
作者: ages7mark    时间: 2013-12-2 23:26

人家早就发过了你居然没看到,太不科学了。
作者: 幽灵胖胖    时间: 2013-12-2 23:57

posted by wap, platform: 小米 (红米)

娘的心动了,坐等nexus5价格合适
作者: arex    时间: 2013-12-3 00:10

确实流畅很多,而且很多程序的载入速度也更快了,不过兼容性问题还是不小....
作者: gogogo    时间: 2013-12-3 00:14

posted by wap, platform: iPhone

总之中心思想是谷歌使出浑身解数结果流畅度比ios还是差了一点
作者: dianwanmi153    时间: 2013-12-3 00:28

posted by wap, platform: iPad

问题是老手机不能升级啊 比如里程碑2
作者: qiuyang83    时间: 2013-12-3 00:34

呵呵,作为纯果青,你想表达什么?
作者: ludwigcn    时间: 2013-12-3 00:36

posted by wap, platform: SONY (Z Ultra)

的确很舒服 兼容性能4.4普及了应该就没啥问题了
儿子机各种羡慕嫉妒
作者: 塌方    时间: 2013-12-3 00:37

posted by wap, platform: Motorola (MT917)

我看泡泡网上怎么说ART下ram和rom占用都更大。。。。。。那所谓的“占用更低的系统内存”又从何而来

本帖最后由 塌方 于 2013-12-3 00:41 通过手机版编辑
作者: ntxdz    时间: 2013-12-3 01:18

posted by wap, platform: Chrome

我看了看日期,蒙了
作者: squallssck    时间: 2013-12-3 02:59

安卓的java虚拟机本身就弱爆了,JIT,多线程异步回收垃圾都没有的,和桌面版本根本不是一个东西.所以速度慢也是可以想象的.这个静态化不可能做得彻底 ,除非开发者放弃一些java的动态特性,这就可能是为什么google的一些app快了而应用不能兼容的原因.
作者: EraserKing    时间: 2013-12-3 07:19

posted by wap, platform: GOOGLE (Nexus 4)
引用:
原帖由 @squallssck  于 2013-12-3 02:59 发表
安卓的java虚拟机本身就弱爆了,JIT,多线程异步回收垃圾都没有的,和桌面版本根本不是一个东西.所以速度慢也是可以想象的.这个静态化不可能做得彻底 ,除非开发者放弃一些java的动态特性,这就可能是为什么google的一些app快了而应用不能兼容的原因.
JIT没有?你在开玩笑?
作者: 家明    时间: 2013-12-3 08:10

posted by wap, platform: iOS

恭喜猴机又离ios近了一步
作者: mrzc    时间: 2013-12-3 08:15

最后的遮羞布?不对吧,不是还有独占游戏多和指纹解锁么?
作者: chain416    时间: 2013-12-3 08:31

引用:
原帖由 squallssck 于 2013-12-3 02:59 发表
安卓的java虚拟机本身就弱爆了,JIT,多线程异步回收垃圾都没有的,和桌面版本根本不是一个东西.所以速度慢也是可以想象的.这个静态化不可能做得彻底 ,除非开发者放弃一些java的动态特性,这就可能是为什么google的一些a ...
jit和垃圾回收没有的话编码都不可能相容,和直接用c++有什么区别?可以说就不是java了,应该不会没有。
作者: 旨旨    时间: 2013-12-3 08:53

posted by wap, platform: GOOGLE (Nexus 4)
引用:
原帖由 @塌方  于 2013-12-3 00:37 发表
posted by wap, platform: Motorola (MT917)

我看泡泡网上怎么说ART下ram和rom占用都更大。。。。。。那所谓的“占用更低的系统内存”又从何而来

本帖最后由 塌方 于 2013123 00:41 通过手机版编辑  
占用更低内存是4.4本身的事情
作者: ffcactus    时间: 2013-12-3 09:08

posted by wap, platform: iPhone

这是怎么把一种解释语言做到可编译的?
作者: mephisto    时间: 2013-12-3 09:19

我只关心应用能不能按规范来?能不能不要每个应用都一大堆权限,哪天能够舍弃LBE这样的软件再说赶上IOS了还差不多
作者: 学远凸    时间: 2013-12-3 09:25

流畅度又不是代表一部手机的全部优点,差不多就行了。
作者: godzillaqqq    时间: 2013-12-3 10:47

引用:
原帖由 塌方 于 2013-12-3 00:37 发表
posted by wap, platform: Motorola (MT917)

我看泡泡网上怎么说ART下ram和rom占用都更大。。。。。。那所谓的“占用更低的系统内存”又从何而来

本帖最后由 塌方 于 2013-12-3 00:41 通过手机版编辑  
应该是那边写错了,官方说法是ROM 就APP在自机解压,安装完容量会比平时占用空间大一点,这也就为什么安装时会比以往时间要久,但对于现在的ROM容量来说这点大小是可以不计的
作者: 黑暗骑士巫妖王    时间: 2013-12-3 10:50

posted by wap, platform: Chrome

安装要更多时间,是因为以前只是单纯的安装,现在是下载来以后重新编译成效率更高的代码,所以时间上去了。
作者: 神奇    时间: 2013-12-3 10:53

就四儿子的使用感受来说,开不开ART,没什么太大感觉。

系统本身已经很滑了。
作者: zztg    时间: 2013-12-3 11:03

我也希望哪天用android了可以不用装绿色守护,autostarts什么的了....后台也不会随意自动启动....全部用C2DM来推送
作者: aszx21    时间: 2013-12-3 11:08

好吧
以后安卓会有默认的普通用户的苹果模式封闭模式
与geek玩的宅男折腾模式
这下你们满意了吧
我想谷歌这帮怪咖工程师真按上面做的话
苹果要哭了先不说死不死反正利润是要下降了
作者: Pires    时间: 2013-12-3 11:08

posted by wap, platform: GOOGLE (Nexus 4)
引用:
原帖由 @神奇  于 2013-12-3 10:53 发表
就四儿子的使用感受来说,开不开ART,没什么太大感觉。

系统本身已经很滑了。
很大不同,隨手一劃就很明顯了
作者: 卖哥    时间: 2013-12-3 11:10     标题: 回复 19# 的帖子

高级编程语言还不是解释语言,还是对人直观的解释语言,程序员能拿大脑过流程判断运行结果。
这种都能编译成原生码

Java这种经过初级处理,对机器直观的解释语言编译成原生码又算得了什么
作者: lvcha    时间: 2013-12-3 11:12

谷歌官方宣称运行内存仅有512MB的老款手机,同样可以流畅运行Android 4.4系统

貌似类似的话在1.5,2.1,4.0,4.1都说过?
作者: godzillaqqq    时间: 2013-12-3 11:30

引用:
原帖由 zztg 于 2013-12-3 11:03 发表
我也希望哪天用android了可以不用装绿色守护,autostarts什么的了....后台也不会随意自动启动....全部用C2DM来推送
这点4.3已经有了,只要你是PLAY下的上架软件,GOOGLE会帮你监视,只要软件不老实了,他们会处理
作者: sceic    时间: 2013-12-3 11:31

defy终于有望上4.4了,是不是这个道理?
作者: Kuzuryuusen    时间: 2013-12-3 12:32

posted by wap

第一代儿子板升到4.4以后怎么开ART?开发者选项里面找不到啊
作者: luokezhu    时间: 2013-12-3 13:11

引用:
原帖由 卖哥 于 2013-12-3 11:10 发表
高级编程语言还不是解释语言,还是对人直观的解释语言,程序员能拿大脑过流程判断运行结果。
这种都能编译成原生码

Java这种经过初级处理,对机器直观的解释语言编译成原生码又算得了什么
不一定吧,像python这样duck typing的如何编译成本地代码?
作者: 好蓝啊    时间: 2013-12-3 13:17

引用:
原帖由 Kuzuryuusen 于 2013-12-3 12:32 发表
posted by wap

第一代儿子板升到4.4以后怎么开ART?开发者选项里面找不到啊
官方rom的一代nexus 7不能开
作者: squallssck    时间: 2013-12-3 13:18

引用:
原帖由 EraserKing 于 2013-12-3 07:19 发表
posted by wap, platform: GOOGLE (Nexus 4)

JIT没有?你在开玩笑?
好吧,查了下,jit是从安卓2.2开始引进的,但是jit和jit之间的差距也可能是巨大的!还有我没说没有垃圾回收,我说没有多线程的垃圾回收.

但是要知道,即便有,也是和桌面的hotspot无法比拟的,引用一句很搞笑的说法 "如果说hotspot虚拟机的实现是飞机的话,安卓的Dalvik虚拟机的实现就是自行车,只是碰巧两者用了相同的语法,而这种语法叫做Java,此外两者毫无关系".现在桌面版JAVA引入了多线程的CMS收集器,甚至是最为前沿的G1收集器也已投入商用,G1几乎已经是实时回收了.安卓虽然语言上使用的是java,但是和真正的java还是有距离的.导致不流畅的原因归根结底还是full gc,因为它要停止工作线程,进行gc.如果安卓的gc一直使用mark sweep类的还是单线程的gc的话,应用程序永远要卡,永远没有同时代的ios流畅!只不过随着硬件性能的提升,这种卡你可能感觉不到.所以期待有一天CMS或者G1这种先进的技术能上安卓.

从这个角度上来看,安卓的潜力还是有的.大量的新技术其实已经是现成的了.

[ 本帖最后由 squallssck 于 2013-12-3 13:32 编辑 ]
作者: Kuzuryuusen    时间: 2013-12-3 13:22

posted by wap
引用:
原帖由 @好蓝啊  于 2013-12-3 13:17 发表
官方rom的一代nexus 7不能开
囧,这就被古狗抛弃了
作者: arex    时间: 2013-12-3 13:25

好像说是目前只有高通的CPU的机子可以开吧...
作者: godzillaqqq    时间: 2013-12-3 13:43

引用:
原帖由 arex 于 2013-12-3 13:25 发表
好像说是目前只有高通的CPU的机子可以开吧...
我老N7都开了,这显然是胡扯的 Google也不良心了
作者: 斯巴达    时间: 2013-12-3 14:29

引用:
原帖由 lvcha 于 2013-12-3 11:12 发表
谷歌官方宣称运行内存仅有512MB的老款手机,同样可以流畅运行Android 4.4系统

貌似类似的话在1.5,2.1,4.0,4.1都说过?
网上看过二太子运行4.4,很流畅
然后我的老手机I9001,单核512M的内存运行4.4也很流畅比我手头上的双核运行4.1还流畅............
作者: 斯巴达    时间: 2013-12-3 14:30

引用:
原帖由 arex 于 2013-12-3 13:25 发表
好像说是目前只有高通的CPU的机子可以开吧...
貌似有人放出来某个版本的ROM里N7的1代也能开ART




欢迎光临 TGFC Lifestyle (http://bbs.tgfcer.com/) Powered by Discuz! 6.0.0