為什么安卓機沒有iPhone流暢?
轉載:騰訊科技
責任編輯:honestsun
網友“foto茄”: 為什么iPhone?6內存僅有1GB,而很多安卓機配置相當高了,還是覺得iPhone流暢一些?
騰訊科技:
相信很多網友都有類似疑問,感覺安卓手機在流暢度上不如iPhone手機。先不說一些配置低的安卓機,即便是最新版安卓系統的旗艦手機,也會感覺達不到iPhone手機的那種流暢度,因此有人以此判斷安卓手機不好。
其實,這都是二者系統機制不同導致的差異。
渲染機制不同
Android沒有iOS流暢的根本的原因是,iOS的UI渲染采用實時優先級,而Android的UI渲染遵循傳統電腦模式的主線程普通優先級。
通俗點說就是iOS對屏幕反應的優先級最高,用戶只要觸摸屏幕,系統就會最優先處理屏幕顯示這個層級,馬上給出動畫效果,然后才處理媒體、服務、核心的架構。
而安卓則是追求進程優先,觸摸屏幕后的手機屏幕顯示和動畫效果放在比較后的優先級。同樣打開相同的網頁,Android手機就會直接將整個網頁全部加載同時渲染HTML,這無疑就增加了處理器的壓力。因此對于Android來說,一個高效的雙核處理器是很重要的。
在iOS中UI渲染過程具有絕對的優先等級,當用戶接觸到iPhone的觸摸屏后,iOS中所有的進程都將停止,UI線程攔截了所有的事件,系統會將所有資源用于渲染UI過程,以保證用戶界面的實時渲染優先級。
而在Android系統中UI渲染過程的優先級別卻沒有那么高,也就是說當你觸摸Android手機屏幕的時候,系統后臺的程序并沒有停止,仍然在繼續運行之中,比如下載和查收短信,這樣系統UI獲得的資源就不夠,這就是Android系統不流暢的原因。
后臺機制不同
安卓手機的后臺是真后臺,像PC一樣,將應用保留在RAM中,當使用HOME鍵退出應用時,程序實際上并沒有完全退出,而是被系統掛在了后臺,為何我們關掉了聊天軟件依然能夠收到消息通知,因為它常駐系統內存。包括平時收到的一些垃圾廣告推送,也是因為后臺有程序運行。
所以這就導致了一個現象,從內存使用上來看,安卓剛開機時內存使用很低,若不進行清理內存操作,正常使用一天,內存占用會達到75%以上。而內存占用越高,使用起來流暢度就會越低,所以安卓機器需要更大的RAM來提升用戶體驗。
而iOS呢,其實是采用的偽后臺,當用戶HOME鍵退出應用時,iOS其實關閉了程序,只保留應用的圖像入口,只會默認將應用的最后的運行數據記錄在RAM中。
之所以iOS也能收到推送,是因為當用戶從應用中選擇開啟推送之后,系統會增加一些進程,這些進程會從蘋果服務器接收信息,然后再通過服務器發給用戶,蘋果服務器在這里是起到了中轉的作用。而正是因為有了這一系列的機制,所以即便iPhone的配置相比于同類安卓機低了很多,但是iOS還是會給人更加流暢的感覺。
iPhone執行程序的效率比安卓機高
另外,安卓系統的編程語言是Java,特點是通用性強,效率低。而iOS的則為Objective-C,專一性強,效率高。
iOS系統本身優化得很好,而且程序也是直接執行,所以效率很高。而安卓系統是通過Java虛擬機來執行,系統需要占用大量內存來換取執行速度,也就是要繞了個大圈才執行程序,所以效率低很多。
廠商喜歡給iPhone做優化
由于iOS的封閉性,App Store里面的App都是在iPhone等產品上執行,硬件利用效率非常高,而且分辨率大小,硬件的更新等等參數也比較穩定,優化工作也容易進行,因而iPhone上的App和硬件結合程度比安卓高很多。
轉載請在文章開頭和結尾顯眼處標注:作者、出處和鏈接。不按規范轉載侵權必究。
未經授權嚴禁轉載,授權事宜請聯系作者本人,侵權必究。
本文禁止轉載,侵權必究。
授權事宜請至數英微信公眾號(ID: digitaling) 后臺授權,侵權必究。
評論
評論
推薦評論
暫無評論哦,快來評論一下吧!
全部評論(0條)