安卓44技术解析预编码提升应用启动速度
安卓4.4技术解析:预编码提升应用启动速度
与iOS相比,Android的用户体验有个相对糟糕的开始。在很长的时间里,界面一直丑小鸭,卡顿也是挥不去的痛。不过,在Google的全力推动,以及硬件厂商的响应下,Android还是跨越各种阻碍,逐渐壮大起来了。在此过程中,Google也在经历着重大的变化。它逐渐从一个只重视数据的公司,转变为一个重视设计和用户体验的公司。从Android4.0开始,Android拥有了自己的设计语言和应用设计指导。与此同时,Google也在着手解决卡顿问题。Android4.1的“黄油计划”使系统和应用运行都更加顺畅,而Android4.2的“ProjectSvelte”提升了内存管理,使得系统能够顺利运行在硬件配置低端的设备上。但是,所有这些都没有解决核心问题,那就是应用运行环境。DalvikVM效率并不是最高的。从Android4.2开始,Google开发者引进了新的Android运行环境ART(意思就是AndroidRuntime。Android官方页面的介绍中,也将其称作新的虚拟机),以替代旧的DalvikVM。它现在是实验选项,系统默认的运行环境仍然是Dalvik。ART会为Android带来怎样的改变?ART的机制与Dalvik不同。在Dalvik下,应用每次运行的时候,字节码都需要通过即时编译器转换为机器码,这会拖慢应用的运行效率,而在ART环境中,应用在第一次安装的时候,字节码就会预先编译成机器码,使其成为真正的本地应用。这个过程叫做预编译(AOT,Ahead-Of-Time)。这样的话,应用的启动和执行都会变得更加快速。根据一些基准测试,新的运行环境能够使大多数应用的执行时间减半。这意味着,CPU消耗大、运行时间长的应用能够更加快速地完成,而一般的应用也能更加流畅,比如动画效果更顺畅,触控反馈更加即时。在多核处理器的设备上,多数情况下只需激活少量的核心,或者能够更好的利用ARM的big.LITTLE架构。另外,它将会显著提升电池的续航能力以及系统的性能。预编译也会带来一些缺点。一方面,机器码占用的存储空间更大。字节码变为机器码之后,可能会增加10%-20%,不过在应用包中,可执行的代码常常只是一部分。比如最新的Google+APK是28.3MB,但是代码只有6.9MB。另一方面,应用的安装时间会变长。至于延长多少时间,取决于应用本身,一些复杂的应用如Facebook和Google+会让你等待更长时间。总的来说,ART的优点还是远远超越其缺点的。毕竟,影响用户体验的要素中,电池续航和应用顺畅运行更为重要。我们仍然不知道ART何时能够替代Dalvik,不过AndroidPolice网站说,Google已经秘密开发了两年之久。Android摆脱卡顿的希望,看来就是它了。
- 民俗特色逐渐消失印刷体春联让墨香慢慢散去气钻情侣玩具液压工具耐磨板注胶机Frc
- OLED照明市场发展状况及主流厂商布局进折边机阿尔山石英晶体陶瓷阀片操作台Frc
- 中国重汽海外融资获中国银行优秀营销项目奖专业音响滑板裤密封圈标准气缸IpadFrc
- 一种简易型毛细管电泳电导检测装置及其应用灯管黄石促销台发电机磨料磨具Frc
- 中航三鑫低碳龙头跳跃增长标志桩刷光设备脲醛树脂停车场风能设备Frc
- 12月30日台州塑料PMMA市场参考价格新郑全毛面料印刷版材金丝机地脚线Frc
- 纵览凹印制版之电子雕刻的演变历程镀铬棒镁钙砖滤筒乳胶制品种植机械Frc
- 小包装将成为方便经济包装的潮流电阻箱粗饲料千张机建筑设备开袋机Frc
- 陕西植保无人机飞防发展迅速农民们使用热情变形合金北镇调谐器固定扣开心果Frc
- 3月中旬对二甲苯国际市场价格行情双辽吊钳油压夹头水晶相框滚针轴承Frc