Android碎片化让开发者深陷“痛苦矩阵”?

移动开发
盛世之下,必有隐忧。随着 Android 的繁荣,开发者不得不面对一个巨大的问题。面对多版本系统,多品牌多尺寸多种硬件规格的 Android 手机对于开发者来说,意味着必须要花费更多更大的时间和精力去调试自己的程序。这个问题多年前就被提起过,但现在正是得到报应的时候。

[[84660]]

在 今年 5 月,Google Play 收获了自己的 480 亿下载次数,而总共的应用数量已经超过了 48 万款,对比的是苹果的 App Store 有着超过 500 亿次的下载,应用数量超过了61 万。在应用数量和下载次数上看,Android 和 iOS 的差距并不大。

接下来是另外一个好消息,Android 手机在智能手机市场上已经占据了 79.5 % 的份额,处于绝对领先位置,Android 机型数量高达 1.1 万种。从数据上看,真是一派欣欣向荣的景象。

盛世之下,必有隐忧。随着 Android 的繁荣,开发者不得不面对一个巨大的问题。面对多版本系统,多品牌多尺寸多种硬件规格的 Android 手机对于开发者来说,意味着必须要花费更多更大的时间和精力去调试自己的程序。这个问题多年前就被提起过,但现在正是得到报应的时候。

Wierd 把这种对于各种 Android 版本和设备的适配称之为“痛苦矩阵”,意指为了确保代码在设备上正常运行,而不得不忍受适配过程中的痛苦。

Todd McKinnon,一个企业管理登录验证公司 Okta 的联合创始人和 CEO 说:

“当你决定开发 Android 应用时,首先你就得面对 6 个主要的平台版本,这还不够,主要版本之下还有细分版本,你必须去面对各种设备,大屏幕的,小屏幕的。”

这当然是非常痛苦的,就像上世纪 90 年代程序员们要面对各种版本的 Windows 系统,还要尽可能的去适配更多的硬件设备一样。相比于在 iOS 上开发应用,Android 开发者面临着更复杂的局面。iOS 6 升级到 iOS 7 已经让许多 iOS 开发者分身乏力,很多开发者表示将放弃 iOS 6,主攻 iOS 7 平台。

为了减少开发难度,同时也为了应用体验,不少 Android 开发者不得不做出一些妥协。McKinnon 最终决定只支持当时***版本的 Android 系统,这就意味着他必须放弃另外一批大部分的用户。根据调查,当时大约只有 37 % 的 Android 用户是使用***版本的 Jelly Bean 系统。

QQ20130731-5

很多开发者开发的节奏是先上线 iOS 版本,然后紧接着 Android 用户便要求开发 Android 应用,另一方面,面对几占智能手机市场八成的 Android 手机用户,开发者也是不愿放弃的。市场越大,碎片化越严重,这样的矛盾暂时无法解决,开发者也只得默默面对。

昨天,我们也写到,Android 新一代***面临着诸多挑战,包括诸如生态系统碎片化的老问题。

Nirav Tolia 的团队用了不到 4 个月就推出了自己的 Android 应用,为了从 Android 2.2.3 版本支持起,也就是要占据 95 % 的 Android 市场,他不得不放弃原生的 Android 代码,而绕道去用网页技术。

而像 Symantec 和 Mozilla 这样的公司不得不在 200 多种设备上测试自动化软件。Trent Peterson,AppThwack 的联合创始人说:

“很明显,Android 系统有问题,你为了获取这个开放平台而不得不去面对成吨的设备。”

 

责任编辑:徐川 来源: ifanr
相关推荐

2013-09-03 09:42:13

Android开发者

2011-04-27 09:34:18

Android盈利困境Android

2012-03-12 21:51:56

2011-12-29 10:01:03

Windows 8注意事项

2013-01-22 10:34:53

开发者Android碎片化

2012-03-20 21:29:51

Android

2012-07-30 14:57:35

Android 开发者

2012-04-23 09:47:48

Android碎片化

2014-07-14 13:18:12

2018-06-06 14:03:19

2010-08-17 09:01:39

jQueryAPI

2016-12-01 14:51:03

2012-04-11 12:07:21

Android

2012-08-10 09:52:27

红帽

2012-03-13 16:04:49

2013-09-02 11:33:38

百度

2014-08-20 10:02:54

GitGit能力

2024-07-29 07:00:00

JavaScript字符串数组对象
点赞
收藏

51CTO技术栈公众号