從單核、四核到八核,智能手機(jī)真的已經(jīng)到了一個(gè)硬件性能遠(yuǎn)超需求的時(shí)代了嗎?的確,很少人會(huì)去擔(dān)心899元以上價(jià)格區(qū)間的手機(jī)是否能滿足流暢運(yùn)行的需要,但對(duì)于囊中羞澀的學(xué)生一族或者已經(jīng)拿了運(yùn)營(yíng)商贈(zèng)送的中低端手機(jī)用戶而言,如何能讓低配置手機(jī)也奔跑起來(lái)的問(wèn)題被不少人關(guān)注。ART模式的加入成為Android 4.4引爆市場(chǎng)的一大賣點(diǎn),512MB運(yùn)行內(nèi)存的手機(jī)也能飛奔起來(lái)?讓我們一同體驗(yàn)吧!
Android系統(tǒng)的卡頓問(wèn)題
谷歌在發(fā)布Android 4.4時(shí),曾經(jīng)宣布,即使是運(yùn)存空間只為512MB的手機(jī),一樣可以流暢地運(yùn)行系統(tǒng)。這一言論引發(fā)不少手機(jī)用戶質(zhì)疑,即使是2GB運(yùn)行內(nèi)存的手機(jī),也無(wú)法確保在安裝運(yùn)行大量軟件后Android系統(tǒng)不會(huì)出現(xiàn)卡頓的現(xiàn)象,Android 4.4憑什么確保用戶手機(jī)系統(tǒng)運(yùn)行的流暢呢?
Android系統(tǒng)運(yùn)行的程序,都是依靠Java語(yǔ)言編寫完成的。雖然Android是基于Linux完成,但是在運(yùn)行Java程序時(shí),還是要事先構(gòu)建出一個(gè)可以運(yùn)行Java語(yǔ)言的虛擬機(jī)環(huán)境,這樣Dalvik虛擬機(jī)就被Google制造出來(lái)了?,F(xiàn)在Android每個(gè)程序在運(yùn)行時(shí),都要先創(chuàng)建一個(gè)Dalvik虛擬機(jī)環(huán)境,用戶開的程序越多系統(tǒng)負(fù)擔(dān)就越大,手機(jī)就越卡。每次運(yùn)行程序時(shí),它們都要先在Dalvik虛擬機(jī)中進(jìn)行編譯。如果將程序關(guān)閉,再次打開時(shí)還需重新進(jìn)行編譯,如此執(zhí)行效率,想不卡頓都難。
讓Android流暢起來(lái)的ART模式
ART虛擬機(jī),是在Android 4.4中才出現(xiàn)的新功能,其全稱是Android RunTime。ART虛擬機(jī)與Dalvik虛擬機(jī)最大的不同,就是對(duì)程序的編譯方式。在ART虛擬機(jī)環(huán)境下,Android對(duì)程序只進(jìn)行一次編譯,就是在程序安裝時(shí)。在安裝應(yīng)用時(shí),ART虛擬機(jī)就先將程序的Java語(yǔ)言轉(zhuǎn)化為適合Android系統(tǒng)運(yùn)行的機(jī)器語(yǔ)言,而且是一次編譯終身受用。這樣就免于程序每次運(yùn)行時(shí),都要重新編譯的麻煩了,系統(tǒng)的運(yùn)行效率被大大提高。可以說(shuō)正是借助ART虛擬機(jī),谷歌才能承諾Android 4.4可以在即使只有512MB運(yùn)存空間的手機(jī)上流暢運(yùn)行。而且在ART模式下運(yùn)行程序,會(huì)有一種如絲般順滑的感覺,程序運(yùn)行和切換都非常流暢。不過(guò)在ART模式下,因?yàn)楝F(xiàn)在的主流程序還沒有針對(duì)ART虛擬機(jī)進(jìn)行優(yōu)化,所以程序的兼容性比較差。
變胖了的應(yīng)用程序
ART模式并非只有好處,解決Android系統(tǒng)編譯問(wèn)題的同時(shí),會(huì)占用略高一些的存儲(chǔ)空間、安裝程序時(shí)相比普通Dalvik模式要長(zhǎng)一些時(shí)間來(lái)實(shí)現(xiàn)預(yù)編譯。完成模式切換以后,應(yīng)用程序的整體體積往往會(huì)有所增加,以微信為例,原本實(shí)際占用存儲(chǔ)空間為36.04MB,在ART模式下則會(huì)提升至52.71MB,提升了近乎50%的容量,這對(duì)于Android智能終端設(shè)備的存儲(chǔ)空間是一大考驗(yàn),不過(guò)相對(duì)運(yùn)行內(nèi)存容量對(duì)整機(jī)售價(jià)的影響,存儲(chǔ)空間對(duì)消費(fèi)者而言成本較為廉價(jià)。