
Android 4.4不是一次小改版,原因是谷歌决定放弃Dalvik转用ART(Android Runtime)。
如果对Android有些许了解的人都知道,Android 4.4之前的版本是通过架在Linux底层上的Dalvik JAVA虚拟机建立起来的,这套虚拟机运行程序的效率很低,因为在系统上每一个应用在运行的时候,字节码都需要通过即时编译器转换为机器码,这势必会拖慢程序的反应速度,由于Android本身就是通过很多个小程序组成的系统,因此每运行一个指令,都需要进行一次解码,这也是为什么很多人在用Android的时候觉得手机硬件在强大,也会有延迟感的所在。
而从Android 4.2开始,Android的开发者已经引入了新的运行环境,也就是ART。
和Dalvik不同的是,在ART上,程序在第一次安装的时候,就会把字节码转换为机器码并存储,以后再使用的时候也不需要重新的转码,这样无形中就提升了Android运行的速度,也使得软件的二次运行速度更快。
而在Android 4.4内,谷歌已经将ART预置在手机内的开发者选项中,用户可以开启之后自行选择。而ART的出现也给出了Android 5.0的方向,在5.0之后,谷歌很有可能会正式启用ART而放弃Dalvik,Android 4.4可以算是预演吧。
而ART的到来会让很多人感到两个明显的变化,第一是安装软件的时间变长,因为安装软件的同时,手机会进行预编译操作,势必会增加了程序安装的时间,我测试了官方最新版QQ的安装,在ART环境下的安装时间为41.73秒,而在Dalvik环境下这个时间只要16.48秒。
其次是应用由于已经解码,因此容量相比未解码之前有了一定程度的增加,同样是QQ,ART下占了63.04MB,在Dalvik环境下只有44.64MB。
原文转自:http://bbs.mfunz.com/thread-914779-1-1.html