ART模式究竟是什么?ART模式是Android runtime的简称。它与传统的安卓Dalvik模式究竟有什么区别?它究竟好在哪?其实在Android 4.2以前,安卓手机系统的应用程序均在Dalvik Java的虚拟机上运行,这种运行模式是还要依靠一个编译器来实现与应用程序的沟通。应程序每次运行时,都需要将程序内的代码即使转变为机器码才能运行,这无形中多附加了一道手续,这就造成了耗电相对较快、占用内存大、即使是旗舰机用久了也会卡顿严重的现象。
相比较而言ART模式就很好的解决了这个问题,通过在安装应用程序时,自动对程序进行代码预读取编译,让程序直接编译成机器语言,免去了 Dalvik模式要时时转换代码,实现高效率、省电、占用更低的系统内存、手机运行流畅。但凡事总有正反两面,ART在解决了该问题的同时,同时也有如:会占用略高一些的存储空间、安装程序时要相比普通Dalvik模式要长一些时间来实现预编译。而现在我们就来实际体验下ART模式,看看它究竟是否值得我们的期待。
占用存储空间对比:
通过分别对ART模式与Dalvik模式的测试,发现ART模式下RAM与ROM的占用还是比较明显的,最高相差近 20%,而最小不足5%。安卓系统的应用程序APK随着1080p的普及和其他深入的优化,体积也越来越大,而在ART模式运行下,存储占用(ROM)或是运行内存(RAM)占用会更明显。不过这个幅度,完全可以接受,毕竟我们现在的手机基本上都8GB起步,完全不是什么问题。
实际效率测试:
其实ART与Dalvik模式整体响应速度相差并不多,大多都相差在1秒或不到1秒左右的时间。当然,这也是目前针对ART 模式优化的应用程序较少的原因。在基准跑分测试中,ART模式的优势就显现出来了,确实要比Dalvik高效了不少。
软件的兼容性对比:
一个新的底层运行模式,毕竟还是要靠应用程序的APP适配才能最大程度的发挥出最大优势。然而目前由于Android 4.4并未大规模普及,仅在部分机型才有,所以目前ART模式下的兼容性,暂时还是个问题,有许多应用程序并未适配,会出现强行关闭、或干脆直接无响应的情况,这一切都是需要我们等待手机厂商后续的优化跟进才行。
耗电量测试:
编分别对Nexus 5的两种模式进行了续航测试,在4小时的中等强度测试下,发现ART模式下,要略比Dalvik模式省电一些,大概在5%---8%左右。(具体还与信号、后台程序运行情况略有偏差)
总结:
通过编实际使用的几天下来,在刚刚切换到ART模式下,其实并没有太多的感觉,觉得一切流畅与速度,都是理所应当的。但当切换回Dalvik模式时,滑动桌面的一霎那就知道究竟差在哪里。ART模式下,手指与屏幕的滑动可以说到了极其流畅的底部,基本做到了手指滑动到哪里,屏幕显示就跟着到哪里。如果单就滑动时跟手的流畅度而言,iOS系统是9分的话,Nexus 5的ART系统小编给打8.9分。他们之间几乎已经没有太大的区别了。
而关于ART模式与Dalvik究竟有什么本质的不同,打个比方就明白了。Dalvik模式像是一台折叠自行车,每次骑之前都要组装后才能上路。而ART 模式就是一个已经装好的自行车,直接就能上车走人。所以ART模式在效率上肯定是要好于Dalvik这已经基本毫无悬念,我们目前能做的就是耐心等待应