Google工程師解答:爲啥Android流暢度比iOS差?

Google工程師解答:爲啥Android流暢度比iOS差?

Andorid更新了一個版本又一個版本,硬件從單核到雙核到四核,系統流暢度總算基本能和iOS持平了。不過人們不禁會問,爲什麼都是基於Linux,兩個系統會差別如此大?爲什麼iPhone 4用單核處理器就能實現的流暢度,Android要高端雙核才能保證?近日,Android開發小組工程師Dianne Hackborn算是半官方回答了其中的一個緣由。


總算追上能啃蘋果了

Dianne Hackborn表示,從界面UI本身的渲染而言,首先,Android從第一個版本就有使用圖形硬件加速,例如通知欄拖拉,對話框的顯示和切換等等。只不過在3.0之前的版本都不是採用完整的圖形硬件加速。由於Android不是一個統一平臺,各終端存在硬件差異,系統會自動調節動畫的幀數。一個典型的例子就是,Nexus S可以實現到60fps的渲染,所以會足夠流暢。但使用同樣分辨率的里程碑,由於硬件(GPU)性能問題,它就無法提供足夠的幀數來保證流暢了。這樣,它的界面渲染幀數要低於60幀,我們使用起來就會偶爾感覺到“卡”。

Google工程師解答:爲啥Android流暢度比iOS差?

而且,即使爲UI開啓硬件加速,OpenGL技術帶來的內存開銷會十分大,比如PowerVR的圖形芯片,此時要消耗掉8MB內存,而UI程序本身都只要2MB內存,這太划不來了。所以,爲了保證不同機型順利運作,很多時候Android會採用CPU繪圖運算代替硬件加速——注意,CPU還要幹別的事情,讓CPU來繪圖只會拖慢速度。

在Android 4.0之前的版本,硬件加速是作爲一個可選擇的參數而存在(考慮到部分APP不支持)。但從4.0開始,這個選項將會被默認啓用,開發小組已針對進行優化,即使不支持硬件加速程序運行也不會出現問題。

Google工程師解答:爲啥Android流暢度比iOS差?

Dianne Hackborn最後表示,硬件加速不是提升流暢度的唯一手段。事實上Android開發小組已經使用很多技術例如改進渲染技術來提升流暢度,典型的例子就是Android 3.0的瀏覽器相比2.2有巨大進步。而隨着4.0鋪開,更多用戶可以感受到這點。

Dianne Hackborn沒有評價iOS是如何達到流暢的。不過大家注意,從iPhone 3GS開始,每一代iPhone的圖形芯片(GPU)都相當強大(iPhone 3GS、iPhone 4、iPhone 4S的圖形處理芯片均爲同代手機最高水平),而且蘋果iOS是封閉系統,我們猜測,蘋果在這一方面並沒有碰到Android那麼多煩心事兒。

Google工程師解答:爲啥Android流暢度比iOS差?
蘋果A5處理器集成的PowerVR SGX543MP2圖形處理器性能相當強大,幾乎秒殺了Android陣營各類對手

Google工程師解答:爲啥Android流暢度比iOS差?

(編輯:汝者)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章