平台碎片化,Android应用开发该如何取舍?

jopen 11年前

        英文原文: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应用开发该如何取舍?

平台碎片化,Android应用开发该如何取舍?

        之所以推荐开发者重点针对 Android 4.0 开发应用,是应为 4.1 与 4.0 版本相比,并没有添加重要的新特性,而且选择 4.0,应用程序可以在使用 4.x 新特性的基础上,覆盖尽可能多的设备。

        再来看其他 Android 分支,2.3 分支如今仍占据 20.0%,而 2.2 和 3.x 分支即将消失。移动领域发展如此之快,不久的将来,Android 2.3 这个里程碑式的版本也将成为历史。

        屏幕分辨率——普通尺寸、高精度分辨率

        Android 的开放性造就了大量不同的设备,这些设备的屏幕尺寸和分辨率各种各样。开发者也应该重点针对一种屏幕尺寸和分辨率来开发,然后再针对其他设备进行测试优化。

平台碎片化,Android应用开发该如何取舍?

        Google 也公布了最新的 Android 设备屏幕数据,目前正常尺寸(4 寸左右)的设备份额最多,占据 78.8%,而在屏幕分辨率中,hdpi(高精度分辨率)占据最多,占据 34.2%。

平台碎片化,Android应用开发该如何取舍?

        OpenGL 版本——2.0

        如果开发 Android 游戏或 3D 图形应用,那就需要关注 OpenGL 的版本。目前 OpenGL ES 2.0 版本使用最广泛,共占据 92.3%

平台碎片化,Android应用开发该如何取舍?

        可以使用uses-feature元素的 android:glEsVersion 属性来定义应用所需要的 OpenGL 版本,也可以使用supports-gl-texture元素来声明应用使用的 GL 压缩格式。

        希望以上这些数据能够为你开发 Android 应用提供一些参考。

        Via Android 开发者网站