安卓手機為什么越用越卡頓呢?每天要清理一下內(nèi)存? 為什么iPhone6內(nèi)存僅有1GB,而很多Android手機配置4GB,6GB 了,還是覺得iPhone流暢一些? 很多網(wǎng)友都有這樣的疑問,感覺安卓手機在流暢度上不如iPhone手機,越用越卡,先不說一些配置低的安卓機,即便是最新版安卓系統(tǒng)的旗艦手機,也會感覺達不到iPhone手機的那種流暢度。下面我們來了解下: 其實也有多種原因,主要是二者系統(tǒng)機制不同導(dǎo)致的差異?!?/p> 1、渲染機制不同 Android沒有iOS流暢的根本的原因是,通俗點說就是iOS對屏幕反應(yīng)的優(yōu)先級最高,用戶只要觸摸屏幕,系統(tǒng)就會最優(yōu)先處理屏幕顯示這個層級,馬上給出動畫效果,然后才處理媒體、服務(wù)、核心的架構(gòu)。 而安卓則是追求進程優(yōu)先,觸摸屏幕后的手機屏幕顯示和動畫效果放在比較后的優(yōu)先級。同樣打開相同的網(wǎng)頁,Android手機就會直接將整個網(wǎng)頁全部加載同時渲染HTML,這無疑就增加了處理器的壓力。因此對于Android來說,一個高效的雙核處理器是很重要的。 而在Android系統(tǒng)中UI渲染過程的優(yōu)先級別卻沒有那么高,也就是說當你觸摸Android手機屏幕的時候,系統(tǒng)后臺的程序并沒有停止,仍然在繼續(xù)運行之中,比如下載和查收短信,這樣系統(tǒng)UI獲得的資源就不夠,這就是Android系統(tǒng)不流暢的原因。 2、后臺機制不同 安卓手機的后臺是真后臺,像PC一樣,將應(yīng)用保留在RAM中,當使用HOME鍵退出應(yīng)用時,程序?qū)嶋H上并沒有完全退出,而是被系統(tǒng)掛在了后臺,為何我們關(guān)掉了聊天軟件依然能夠收到消息通知,因為它常駐系統(tǒng)內(nèi)存。包括平時收到的一些垃圾廣告推送,也是因為后臺有程序運行。 所以這就導(dǎo)致了一個現(xiàn)象,從內(nèi)存使用上來看,安卓剛開機時內(nèi)存使用很低,若不進行清理內(nèi)存操作,正常使用一天,內(nèi)存占用會達到75%以上。而內(nèi)存占用越高,使用起來流暢度就會越低,所以安卓機器需要更大的RAM來提升用戶體驗。 而iOS呢,其實是采用的偽后臺,當用戶HOME鍵退出應(yīng)用時,iOS其實關(guān)閉了程序,只保留應(yīng)用的圖像入口,只會默認將應(yīng)用的最后的運行數(shù)據(jù)記錄在RAM中。 之所以iOS也能收到推送,是因為當用戶從應(yīng)用中選擇開啟推送之后,系統(tǒng)會增加一些進程,這些進程會從蘋果服務(wù)器接收信息,然后再通過服務(wù)器發(fā)給用戶,蘋果服務(wù)器在這里是起到了中轉(zhuǎn)的作用。而正是因為有了這一系列的機制,所以即便iPhone的配置相比于同類安卓機低了很多,但是iOS還是會給人更加流暢的感覺。 3、iPhone執(zhí)行程序的效率比安卓機高 另外,安卓系統(tǒng)的編程語言是Java,特點是通用性強,效率低。而iOS的則為Objective-C,專一性強,效率高。 iOS系統(tǒng)本身優(yōu)化得很好,而且程序也是直接執(zhí)行,所以效率很高。而安卓系統(tǒng)是通過Java虛擬機來執(zhí)行,系統(tǒng)需要占用大量內(nèi)存來換取執(zhí)行速度,也就是要繞了個大圈才執(zhí)行程序,所以效率低很多。 4、廠商喜歡給iPhone做優(yōu)化 由于iOS的封閉性,App Store里面的App都是在iPhone等產(chǎn)品上執(zhí)行,硬件利用效率非常高,而且分辨率大小,硬件的更新等等參數(shù)也比較穩(wěn)定,優(yōu)化工作也容易進行,因而iPhone上的App和硬件結(jié)合程度比安卓高很多。 安卓手機的硬件配置一樣天天變,開發(fā)者也不可能針對所有的機器型號進行開發(fā),只能在比較主流的機器上進行測試并保證運行流暢,所以很多國產(chǎn)中低端安卓手機很難得到流暢的使用體驗。 5、再看看安卓這邊 Android手機,由于開源的公開條件,Google無法從代碼這一端口約束第三方的應(yīng)用程序,同時,由于Linux核心設(shè)定應(yīng)用在調(diào)取系統(tǒng)功能時一定要取得ROOT權(quán)限,這也導(dǎo)致大量應(yīng)用因為單一功能的實現(xiàn)需求而獲得整個ROOT層面的支配,可以在Android手機的任意儲存位置進行讀寫,這種高自由度無異于開啟了潘多拉魔盒,讓Android手機無法對惡意App事先設(shè)防。這也是開源軟件備受爭議、且在商用領(lǐng)域遭到抵觸的原因:它只關(guān)心是否授予了用戶自由——這個自由也包括逾越邊界的自由——而沒有從最壞的出發(fā)點去考慮如何規(guī)避被濫用的風險。盡管Google作為巨頭,一直在嘗試對產(chǎn)業(yè)鏈進行統(tǒng)一管理,但是當這條產(chǎn)業(yè)鏈日益龐大、連Google也只能扮演其中之一的角色時,Android的失控也就在情理之中了。比如,Android的最新版本通常需要花費超過一年半的時間,才能使激活它的Android手機占比超過50%,但是iOS 7只用了兩個月,就讓半數(shù)以上的iPhone都更新完畢。另外,一款應(yīng)用程序如果被蘋果從App Store中懲罰出去,它就再也無法被安裝到任何一款合法的iPhone里面,但是如果一款應(yīng)用程序被Google驅(qū)逐出Google Play,但是它還是可以登錄各種第三方應(yīng)用市場,提供正常的下載和安裝。 所以,Android的這種天生短板,又催生出了一個“手機調(diào)?!钡氖袌?,并帶動了新的產(chǎn)業(yè)鏈。 這是Google希望從源頭解決Android卡慢問題的努力,但是這只是對性能優(yōu)化有著作用,無法解決因為應(yīng)用程序違規(guī)調(diào)用資源而產(chǎn)生的問題。同時,由于在安裝應(yīng)用程序時進行了“預(yù)編譯”,整個安裝時間將會變長,安裝完畢后生成的文件也會變大,比如最新的Google+安裝包只有6.9M,但是它安裝后的APK大小達到了28.3M,這對Android手機儲存空間又存在過多占用的問題。 “手機調(diào)校”的第二級,在于ROM層。作為全球最大的Android市場,中國的許多手機廠商都以開發(fā)專用ROM來為銷售產(chǎn)品添彩,大多數(shù)的ROM,也都會考慮對Android系統(tǒng)進行優(yōu)化,比如MIUI V6就宣稱“引入多種Linux系統(tǒng)內(nèi)核內(nèi)存優(yōu)化技術(shù),提高應(yīng)用運行效率”。 也就是說,與Google做的事情一樣,ROM廠商主要的優(yōu)化工作,也是對Linux動刀,打上各種補丁,使其底層語言能夠更好的適配到各種手機終端上。還是以MIUI V6為例,在介紹新特性時,其有這么一條:“ZRAM調(diào)度優(yōu)化技術(shù)”,其實ZARM就是Linux內(nèi)核里的一個內(nèi)存模塊,作用就是在內(nèi)存中劃出一個部分出來充當虛擬盤,來承載Linux的交換分區(qū),將一些任務(wù)壓縮容納進去,使內(nèi)存的使用率提高,讓CPU來為內(nèi)存服務(wù)(因為目前的智能手機普遍CPU過剩、而內(nèi)存才是瓶頸)。 不過,ROM也是一把雙刃劍,它對于Android底層系統(tǒng)的修改,以及它對于內(nèi)存空間的占用,又都有增加手機負載的風險。 “手機調(diào)?!钡牡谌墸谟趹?yīng)用層。大量應(yīng)用程序在手機中發(fā)生的意外或故意占用事件,是造成Android手機越來越慢的最核心原因。過多的應(yīng)用程序熱衷于滯留在內(nèi)存空間里、以及將大量碎片留在儲存空間里,是帶來麻煩的罪魁禍首。這也是為什么即時清理類應(yīng)用得以逐漸成為Android手機標配。 Android系統(tǒng)有七類進程,分別是前臺進程、可見進程、主要服務(wù)、次要服務(wù)、后臺進程、內(nèi)容供應(yīng)節(jié)點、空進程,在沒有安裝清理類應(yīng)用的時候,一部Android手機只能依賴系統(tǒng)默認的分配機制來自動調(diào)節(jié)內(nèi)存使用,只要應(yīng)用程序提出請求,大部分進程只要打開后都會被保留在內(nèi)存當中,這原本是為了讓用戶在再度激活這些進程時不需要重新載入、節(jié)省時間的初衷考慮,但是Android沒有料到激烈的市場競爭會驅(qū)使應(yīng)用程序產(chǎn)生“劣幣驅(qū)良幣”的趨勢,很多開發(fā)者出于商業(yè)目的,在不需要留存在內(nèi)存的情況下也想方設(shè)法的讓應(yīng)用程序保持潛在運行狀態(tài),一個兩個還好說,但是一旦數(shù)量更多,Anrdoid手機就會頻頻卡頓和發(fā)熱。 除了對內(nèi)存的過度消耗之外,Android手機也容易在儲存中積累大量冗余數(shù)據(jù),包括無法卸載的預(yù)裝應(yīng)用、卸載之后的殘存文件以及使用應(yīng)用的過程中產(chǎn)生的緩存,由于Android本身沒有提供管理工具,即使將手機連接電腦之后也是如同Windows樹狀結(jié)構(gòu)一樣的文件夾包,用戶很難獨立判斷哪些文件夾可以刪除、哪些文件夾是系統(tǒng)必備的,最后也會導(dǎo)致手機尺寸空間愈來愈窄的情況。 |
|