平臺碎片化,Android應用開發該如何取舍?
英文原文:Dashboards
與 iOS 開發相比,Android 開發平添了不小的工作量,因為 iOS 只要針對一個系統版本(最新版本)進行開發和升級優化就行,而 Android 不一樣,目前市面上廣泛使用的 Android 系統分支就高達 8 種,這分別對應 8 種 API,設備更是高達數千款。
Android 開發者不可能針對所有的 API 和設備都進行開發和優化,要有所取舍,重點選擇市場份額最大的系統分支和設備,然后再針對其他款設備進行相應地優化。
Android 系統選擇——4.0(API 級別 15)
由于 Android API 一般是在之前的版本基礎上添加了一些特性,因此 Android 應用程序向前兼容于新版的 Android 系統,而不一定向后兼容于低平臺。比如,針對 Android 4.0 分支(API 級別為 15)開發的應用,可以運行于 Android 4.0 及最新的版本,而無法兼容于 Android 2.3。
從 Google 發布的最新 Android 分支份額數據來看,目前 Android 4.1 分支位居首位,占據 35.5%,加上其他版本,4.x 分支總份額已經高達 78.6%。
之所以推薦開發者重點針對 Android 4.0 開發應用,是應為 4.1 與 4.0 版本相比,并沒有添加重要的新特性,而且選擇 4.0,應用程序可以在使用 4.x 新特性的基礎上,覆蓋盡可能多的設備。
再來看其他 Android 分支,2.3 分支如今仍占據 20.0%,而 2.2 和 3.x 分支即將消失。移動領域發展如此之快,不久的將來,Android 2.3 這個里程碑式的版本也將成為歷史。
屏幕分辨率——普通尺寸、高精度分辨率
Android 的開放性造就了大量不同的設備,這些設備的屏幕尺寸和分辨率各種各樣。開發者也應該重點針對一種屏幕尺寸和分辨率來開發,然后再針對其他設備進行測試優化。
Google 也公布了最新的 Android 設備屏幕數據,目前正常尺寸(4 寸左右)的設備份額最多,占據 78.8%,而在屏幕分辨率中,hdpi(高精度分辨率)占據最多,占據 34.2%。
OpenGL 版本——2.0
如果開發 Android 游戲或 3D 圖形應用,那就需要關注 OpenGL 的版本。目前 OpenGL ES 2.0 版本使用最廣泛,共占據 92.3%。
可以使用uses-feature元素的 android:glEsVersion 屬性來定義應用所需要的 OpenGL 版本,也可以使用supports-gl-texture元素來聲明應用使用的 GL 壓縮格式。
希望以上這些數據能夠為你開發 Android 應用提供一些參考。
Via Android 開發者網站