Oct 20th, 2009

I’m not going to hide that we’re Android enthusiasts and while we try to be as objective as possible, we certainly take more of a liking to Android than, well… any other mobile platform in the history of the universe. That being said, we understand there is an approaching “problem” with Android regarding potential hardware fragmentation. As Android grows and the number of carriers, manufacturers and handsets rises, developers will face an incredibly diverse range of circumstances on which they need to develop. Right or wrong?

Fake Steve Jobs would agree as he compares the Motorola Droid and Sprint HTC Hero:

… let’s say they’re both the most amazing pieces of hardware ever invented, way better than the iPhone, purely on a hardware basis. Now imagine you’re an app developer. Maybe you’ve got a game. Writing for Android means you do one version for this phone: (shows Droid) – and another version for this one: (shows Sprint HTC Hero) –

As you may notice, they’re not very alike. And let’s imagine there are loads more of these Android phone models, all slightly (or very) different from one another. Like this new vaporphone that Dell is working on. And you, lucky Android developer, have the pleasure of trying to guess which models are going to sell enough units to make it worth your while to port your application to them.

He makes it sound really difficult, doesn’t he? Its mostly smoke, mirrors and yearnful ignorance. No, you don’t need to redo your entire application or game for every single phone on the market. In fact, Google recently addressed this “issue” by simplifying every single Android Phone’s options as being one of 3 screen resolutions:

  • QVGA (240×320)
  • HVGA (320×480)
  • WVGA (480×854)

Regardless of the screen’s actual “size” that means that each developer would need to account for THREE different hardware types in terms of the screen. And it isn’t like the developer needs to totally rework their application. I was tipped on this article (and the rebuttal concept) by Jeff from Codesector.com, the creator of 2 Android applications (Maverick and Here I Am) and this is what he had to say:

Hi Rob,

After reading (and laughing at) this post I made simple screenshot that demonstrated same app on all screen resolutions. Which include QVGA (240×320), HVGA (320×480) and WVGA (480×854).

The point is, Android system can automatically resize apps to any screen resolution – developers don’t need to adapt their programs to dozens phones. To make app look better on bigger screens like in Motorola Droid, a folder with hi-res graphics (e.g. 48x48px icons in addition to 32x32px) should be included in the application. It can’t be more simple than this :)

A little adaptation may be needed for small screen devices, but this is a few minutes of work. On a QVGA device, Android Market will filter out all apps that do not declare small screens support. So developers may want to check and update their applications to make them ready for HTC Tattoo and similar phones.

He continued by claiming other hardware variations were being addressed by Google to make it simpler for the developer to account for differences. For example: does the phone have a D-Pad or trackball? In terms of coding an app or game, the developer doesn’t have to write separate code for each – the trackball movement is correlated with D-Pad movement and the developer work load isn’t ridiculously increased as iFanboys may want you to believe. Here is the screenshot from one of Jeff’s applications that quickly illustrates the same application working on 3 different Android-safe screen resolutions/sizes:

android-screen-sizes

And the iPhone enthusiast might say:

3 > 1 so you lose

But there are three things they aren’t taking into consideration:

  • Taking 3 screens into consideration doesn’t mean 3 times the work
  • Soon enough there will be more Android Phones than iPhones in the world. Developers will find it MORE than worth their time to go through a few extra steps to ensure their application is available all over the world, on numerous carriers, on phones made by numerous manufacturers.

And don’t forget the wild card in all of this – the customer. Despite what the Fake Steve Jobs, the Real Steve Jobs or any other Steve Jobs thinks – not everyone wants an iPhone. Not everyone wants a touchscreen. Not everyone wants a specific screen size, a specific shape, specific capabilities/needs, specific buttons, specific hardware layout, specific look, specific ANYthing.

The iPhone gives customers something very specific and I won’t lie – something very good. But Android gives options. And being able to choose from lots of very different, very specific and inevitably very good and *gasp* superior options is something many users/customers appreciate. I hate to burst any bubbles out there but not everyone wants an iPhone. Being able to choose from hundreds of different phones, knowing they can get pretty much all the same apps on each one regardless of which they prefer is pretty darn amazing. And… I’m guessing… it will probably be worth it for the developer to make a few little changes to some images so the user gets a nice view on each screen.

I heard you thinking “Hundreds of phones? Is he on crack?” To answer the latter question, yes. But the more important of the questions is the “hundreds” – am I serious? I wouldn’t be surprised to see 100+ Android Phones available by next year on a global scale. Probably the same reason I think those 2012 market share estimations are modest at best. And the Fake Eric seems to agree.

local_offer    Apple  

stars Further Reading