来源:爱范儿
时间:2014-07-11
Android碎片化的争论由来已久,从Android 2.x时代就已经开始出现,直到如今Android L现身,有人认为这是和Android繁荣休戚相关,也有人认为,开发者是在含泪适配各种设备。
说起来,人们口中的Android碎片化主要表现在Android品牌和机型众多,Android版本众多和Android设备的尺寸和分辨率众多。奇怪的是,讨论Android碎片化的往往不是默默写代码做适配的开发者们,这一次,一个开发者坐不住了,亲自来谈这个在互联网流传多年的迷思,Android设备的屏幕尺寸也并不是什么大的障碍。
出品过Pocket Casts等游戏的开发商Shifty Jelly的联合创始人 Russel Ivanovic在他的博客里分享了自己的看法,事情的由来要从一张流传甚广的图片说起:
上图每一个方框代表一种Android设备的屏幕,颜色越深,这种尺寸的屏幕也就越多。也就是说,Android开发者理论上需要适配上图中的屏幕。对于我们大多数非开发者而言,看到上图不免要深深地同情起Android开发者,默默地拿出钱包请他们吃饭。但是Russel Ivanovic表示,别矫情了,他们过得挺好:
“说实话,那不是很难,(为Android设备开发应用)并没有大多数人想象的那样让人头疼。Google早已经给了我们界面视图布局工具,你可以自定义一种或多种界面视图,以适应不同尺寸的设备。如果你还想更精益求精,那么你还可以只保留一种代码库而尽可能多的调试更多的视图。这些都是可扩展标记语言(XML),并不存在于你的代码之中。如果你是一个iOS开发者,它就如同iOS中的XIB文件。也有一部分人还没意识到,Android已经标准化设备分辨率很长一段时间了。”
去年的GoogleI/O大会上,Google也发布了开发者工具Android Studio,使工具的开发模式更加的丰富便捷,提供多尺寸预览,侧栏查看颜色、实时效果预览等功能。
虽然也有资深开发者认为只有没写过代码的人才会相信Android Studio真的能好用,但是有总比没有好吧。
Russel Ivanovic挑选了为常见的10款Android设备,运行Pocket Casts来体现游戏在不同Android设备的界面差异,这几款手机的显示屏分辨率分别为:
720x1280
768x1280
800x1280
1080x1920
1440x2560
据此,Russel Ivanovic发现,开发者为不同的Android设备和不同屏幕进行适配比想象中简单很多。不过这也于Android手机,Android平板并未计算在内。
对于 Russel Ivanovic和他的Shifty Jelly来说,适当舍弃也是对抗Android碎片化的秘密武器。
对于 Russel Ivanovic所说的Android在标准化分辨率的说法,从这一两年的新机发布来看也是所言非虚的,中低端720p,高端的1080p以及2K屏相对统一许多。至于老旧的Android 2.x版本,为了效率的开发者也就只能放弃了。
所以,这次开发者现身说法,屏幕尺寸、屏幕分辩的碎片化的问题在Russel Ivanovic看来并不是什么事儿。