[情報]512MB設備為啥能流暢運行Android4.4

看板AndroidDev作者 (小小的改變是,成功的開始)時間12年前 (2013/11/08 10:33), 編輯推噓2(204)
留言6則, 3人參與, 最新討論串1/1
與iOS相比,Android的用戶體驗有個相對糟糕的開始。在很長的時間裡,界面一直醜小鴨 ,卡頓也是揮不去的痛。不過,在Google的全力推動,以及硬體廠商的響應下,Android 還是跨越各種阻礙,逐漸壯大起來了。 在此過程中,Google也在經歷著重大的變化。它逐漸從一個只重視數據的公司,轉變為一 個重視設計和用戶體驗的公司。從Android 4.0開始,Android 擁有了自己的設計語言和 應用設計指導。與此同時,Google也在著手解決卡頓問題。Android 4.1的「黃油計畫」 使系統和應用運行都更加順暢,而Android 4.2的「Project Svelte」提升了內存管理, 使得系統能夠順利運行在硬體配置低階的設備上。 但是,所有這些都沒有解決核心問題,那就是應用運行環境。Dalvik VM效率並不是最高 的。從Android 4.2開始,Google 開發者引進了新的Android運行環境ART(意思就是 Android Runtime。Android官方頁面的介紹中,也將其稱作新的虛擬機),以替代舊的 Dalvik VM。它現在是實驗選項,系統默認的運行環境仍然是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擺脫卡頓的希望,看來就是它了。 目前在Android4.4的開發人員的功能選項中,已有切換Runtime的功能, 切換後,會切換VM Lib,同時要求重開機。 我的Galaxy Nexus在使用ART後,讓這是只有1.2Ghz的雙核機(現在是 低階機),也有變更順的機會 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 59.120.66.84

11/08 13:54, , 1F
我的Desire 可以再戰10年嗎!!
11/08 13:54, 1F

11/09 00:48, , 2F
512MB可以順暢的運行4.4前提是沒有OEM做得各式各樣的APP
11/09 00:48, 2F

11/09 00:48, , 3F
OEM的APP才是真正拖慢系統效能的東西 END
11/09 00:48, 3F

11/09 00:48, , 4F
是否突破盲腸了呢
11/09 00:48, 4F

11/09 01:52, , 5F
看一些google自己的change有些的確是為了save memory
11/09 01:52, 5F

11/09 01:52, , 6F
而稍微省略了一些UI效果
11/09 01:52, 6F
文章代碼(AID): #1IV4sNsB (AndroidDev)