Nexus One: Where is Android at?

With the announcement of the new GooglePhone, which promises to be the best Android device yet and by all early reports at least comparable with the iPhone 3GS, it seems appropriate to stop to take a look around to see where Android is at.

We start with the breakdown of Android Platform distribution, based on access to the Android Market.

Android versions
Android versions (Source: http://developer.android.com)

Android 1.6 is the clear winner so far, with 1.5 in second. Perhaps the most interesting part of this graph is therelatively large bite taken by Android 2.0.1 considering its relatively recent release. This was driven probably by the release of the Motorola Droid which has seen phenomenal usage growth (based on Admob metrics, see below). With the Nexus One running Android 2.1, I think we can probably expect to see some changes here pretty soon.

Android Device Distribution
Android device distribution (Source: Admob)

The latest data (November) that I could find from Admob describing the share of traffic across OS indicates that Android is catching up with the iPhone OS. This situation is sure to change in Android’s favour when we see the numbers for December and January (Venturebeat.com appears to have fresher data than us, and indeed shows a healthy increase for Android, although Nokia & Symbian appear to be missing from their stats).

Ad requests by OS
Ad requests by OS (Source: Admob)

One point worth noting from the first two graphs is that there are quite a few versions of Android, and quite a few handsets. What does this mean for users and developers?

Compatibility between platforms

There have been observations about Android becoming more fragmented (for instance this post from Russell Beatie). And this is one place where Android and iPhone OS differ, (because let’s face it, right now these are the platforms to talk about). The iPhone Appstore is stricter, insisting on forward compatibility. That is, if your app doesn’t become compliant with the latest & greatest version of iPhone OS, then it will be ejected from the Appstore. On the other hand Android, being a more open platform is less restrictive about what can land in the Android Market.

This, however, might be something of a poisoned chalice. Good for under resourced developers trying to make a buck – their app won’t get kicked out of the Android market when a new version appears; but not so good for the end user experience. Picture the situation, where you download an app from the market which was tested on one version of Android and does not compute on your device which runs a different version.

Google is of course aware of the problem. When Android 1.5 (Cupcake) was released, Google tested many of the most popular apps, and found them to be broken. They said this was because of bad development techniques, but regardless of the reasons, the compatibility problem exists. Google made some recommendations about what to do to deal with this problem. Their advice was to avoid all of the following:

  • Using Internal APIs
  • Directly Manipulating Settings
  • Going Overboard with Layouts
  • Bad Hardware Assumptions
  • Incautious Rotations

Another recommendation coming from the Android Developer’s blog is to use a manifest entry to ensure that your app will only be installed on the targeted versions. For example if your app uses an API only released in version 1.6 then you would specify 4 as the minimum SDK version:

This at least prevents your app being installed on a non-compatible version on Android.

Just how tricky is the problem?

Well it’s not just about different versions; it’s about different hardware too. With somewhere around 20 different Android models already in circulation, and plenty more expected in 2010, the problem isn’t going to get any easier.

First there are a range of different screen sizes across Android phones, ranging from 320×480 on some models to 854×480 on the Droid.

So far, this problem hasn’t affected iPhone OS, but with a new device coming in June, no doubt with resolution comparable to the Droid and Nexus One, this is sure to change. However, the problem will still be easier on iPhone than Android since there will still only be two different screen resolutions to contend with.

Developers can of course determine the screen size of the device with method calls like

but getting the screen size is just the first step in ensuring a good experience across devices of varying capability.

Then there is the issue of the keyboard – some Android devices have a physical keyboard, and some rely solely on a virtual keyboard. Any developer that makes an assumption either way is in danger of alienating some users unless they ensure the app will work in all cases.

There are also graphics processing issues to worry about. The latest Android device will be capable of better graphics processing (e.g. OpenGL with 3D support), but what happens on the older devices? This will only be an issue where an app makes use of the newer graphics capabilities of newer devices.

So back on topic – where is Android at?

We’ve seen from the stats I’ve quoted above that Android seems to be at, or approaching, a turning point. There are 6 (including 2.1) Android versions in the wild, spread out over 16% of the total internet-using smartphone marketshare.

As Russell suggests in his post, this fragmentation issue will get worse if something is not done about it, and will likely result in their marketshare dropping due to customer confusion and app-store-frustration.

With 1.6 the most used version of Android, 2.0.1 quickly-climbing thanks to the Droid and the inevitable rise of 2.1 on the Nexus One, Google will have to start making some very hard decisions, very soon.

Google’s previous devices have been released on their partners’ terms, the Nexus One is (reportedly) to be released on their terms, and the app-store favours developers. Right now, Android’s share, while sizeable, isn’t a patch on Apple’s – but if the Nexus One can push Android that little bit further it could easily overtake Symbian which could well shake up the market quite a bit.

Leave a Reply

Exclusive tips, how-tos, news and comment

Receive monthly updates on the world of mobile dev.

Other Products

Market leading device intelligence for the web, app and MNO ecosystems
DeviceAtlas - Device Intelligence

Real-time identification of fraudulent and misrepresented traffic
DeviceAssure - Device Verification

A free tool for developers, designers and marketers to test website performance
mobiReady - Evaluate your websites’ mobile readiness

© 2024 DeviceAtlas Limited. All rights reserved.

This is a website of DeviceAtlas Limited, a private company limited by shares, incorporated and registered in the Republic of Ireland with registered number 398040 and registered office at 6th Floor, 2 Grand Canal Square, Dublin 2, Ireland