Gingerbread finally accounts for less than 50 percent of Android devices.

Android market share numbers for the end of December have just gone up on the Android Developers site, and the story is much the same as it was last month: Android 4.0, 4.1, and 4.2 continue to gain ground over older versions of the software. Version 2.3, codenamed Gingerbread, still powers more of the Android devices that accessed Google Play in the last two weeks of December than any other version, but its share has finally fallen below 50 percent (it now sits at 47.4 percent, down from 50.7 percent last month).

Now, 39.3 percent of all Android users are running Ice Cream Sandwich or newer, with 10.2 percent of those users running one of the two Jelly Bean versions. Some of this sizable uptick—up from 34.2 percent just last month—doubtlessly reflects the number of Android phones and tablets given as gifts over the holidays. Though Android 4.2 is still confined largely to Google's Nexus devices, it's rare to find a new device that isn't at least running Ice Cream Sandwich.

Some of the increase, especially Android 4.1's 3.1 percent jump, can also be attributed to Samsung's Galaxy S III, which began receiving its Android 4.1 updates in earnest in the middle of December. Samsung's flagship is one of the most popular Android handsets with consumers. The Verizon version of the handset likely accounts for a good deal of the upgraded phones given Verizon's status as the United States' largest wireless carrier.

It's still disappointing a mere 1.2 percent of all Android devices accessing Google Play are running the most recent version of Android, but at least the ecosystem is continuing its move to more current versions at a steady clip. The faster this balance shifts, the sooner users (and developers) can benefit from all of the work Google and others have done on Android in the last year or so.

"it's rare to find a new device that isn't at least running Ice Cream Sandwich"

I hate to be the bearer of bad news, but that isn't quite true. If you are looking at new phones, that cost between $100 - $300 with a new contract, you're right. But go shopping with a teenager who is looking for one of the free/cheap phones and those counters are flooded with devices still running 2.3 and even a few with 2.2. And I doubt any of those phones will ever get an upgrade.

61 Reader Comments

"It's still disappointing a mere 1.2 percent of all Android devices accessing Google Play are running the most recent version of Android"

My view on this is that developers have early access to it, so when it gets to end users, the features are well exploited, but the average user just doesn't care. All of the core apps receive updates independent of the OS, so it isn't nearly as important as on iOS to receive system wide updates.

Was there something inherently bad about Honeycomb that made manufacturers want to skip it? Or was it bad timing, bad update policy, something else?

Yes. It was an incomplete and rushed release, forced out by the success of the iPad in the middle of a major overhaul. Even Google admitted it was so rushed that they were unwilling to release the source code, as it was full of hacks and quick-fixes and only really worked on the Xoom (and poorly at that). They didn't want it ported to any ROMs or have off-brand/cheap import tablets be released based on that code base.

Unfortunately, lack of support by manufacturers is mainly to blame for this. I had to root and change my bootloader to upgrade from 2.2 to 2.3 on my Acer device, and I did it not a month ago.

Ditto. I had to root my T-Mobile g-2 to get it up to ICS or Jelly been even tho it has a stock android os with no HTC sense or other carrier/mfg customizations to get in the way. The latest CM10 releases for it are remarkably good and it actually performs fairly well in-spite of it's modest specs. I'm sure it doesn't hurt that the rom includes an moderate OC by default but it seems to work for most everyone as I haven't seen any reports of anyone having stability problems because of the OC after installing the roms.

I went into a store the other day, and looked for a low end Android phone (ie cheaper) that ran 4.x (Ice Cream Sandwich / Jelly Bean). They didn't exist in the store I was in - they were all 2.3 devices.

If Google doesn't manage to change that, Android 2.3 will be their XP.

I don't think an Android tablet sold today comes with anything less than ICS. The Transformer Prime and Infinity were all on markdown this past shopping season, and those are running JB. It was hard to find a TF300T in my area. I know it's all anecdotal, but it appears those devices sold fairly well. The Nexus 7 flew off the shelves here, too.

Was there something inherently bad about Honeycomb that made manufacturers want to skip it? Or was it bad timing, bad update policy, something else?

(This question coming from a non-Android user)

Honeycomb was purely for tablets, and the source code was never publicly released.

Well, technically, the source was released (and it's still available). It's all there in the source tree history, they just didn't release it until they released ICS, and it's not tagged, so you would have to guess a good point to build off of:

Part of the problem with Android updates is the turf battles between the carriers and OEMs. Personally, I use a Motorola DX2 on Verizon. The bootloader on my phone is locked and the OS kernel is a Gingerbread kernel and cannot be changed. As a result, officially, we cannot update to either Ice Cream Sandwich or Jelly Bean. Yet there are unofficial updates thru certain developers on XDA.

Another challenge that leads to delays is OEM additions to the basic interface with proprietary skins. Google may release an OS update but it isn't necessarily adopted until the OEM has had a chance to evaluate the feasibility for a particular phone (will it run with our skin and will it run on our particular set of hardware?). If the new update won't function with the OEM skin, no dice!

If the phone's bootloader can't be unlocked, OS specific kernels can't be updated. There are workarounds but they are a kludge at best.

There is also the matter of carrier specific apps included with the phone aka bloatware. Many people root their phones in an effort to get rid of the bloat and to provide a smoother experience. The carriers frown on removing their apps but can do little to stop people rooting their phones.

Part of the problem with Android updates is the turf battles between the carriers and OEMs. Personally, I use a Motorola DX2 on Verizon. The bootloader on my phone is locked and the OS kernel is a Gingerbread kernel and cannot be changed. As a result, officially, we cannot update to either Ice Cream Sandwich or Jelly Bean. Yet there are unofficial updates thru certain developers on XDA.

Another challenge that leads to delays is OEM additions to the basic interface with proprietary skins. Google may release an OS update but it isn't necessarily adopted until the OEM has had a chance to evaluate the feasibility for a particular phone (will it run with our skin and will it run on our particular set of hardware?). If the new update won't function with the OEM skin, no dice!

If the phone's bootloader can't be unlocked, OS specific kernels can't be updated. There are workarounds but they are a kludge at best.

There is also the matter of carrier specific apps included with the phone aka bloatware. Many people root their phones in an effort to get rid of the bloat and to provide a smoother experience. The carriers frown on removing their apps but can do little to stop people rooting their phones.

Looking at Motorola phones on Verizon in particular, from what I understand, it's basically a combination of:

1) Carriers lusting for control. Apparently Steve Jobs wanted to go to Verizon with the iPhone, but Verizon has an insatiable hardon for controlling their phones (look at how several years ago, they limited the original Razr for instance from using Bluetooth for anything but headsets, even though Razrs in general were more than capable of using Bluetooth for things like getting pictures of your phone).

2) Carrier's custom skins/etc are usually jury-rigged on top of whatever the current build of Android is. So naturally, when 2.3 turns into 4.0 for instance, everything breaks because the skin was based on janky exploits in 2.3. So months are wasted getting the skin to work on 4.0, then more months are wasted on getting Verizon to approve it (presumably to make sure that the Verizon shitware doesn't completely crash the phone).

Part of the problem with Android updates is the turf battles between the carriers and OEMs. Personally, I use a Motorola DX2 on Verizon. The bootloader on my phone is locked and the OS kernel is a Gingerbread kernel and cannot be changed. As a result, officially, we cannot update to either Ice Cream Sandwich or Jelly Bean. Yet there are unofficial updates thru certain developers on XDA.

Another challenge that leads to delays is OEM additions to the basic interface with proprietary skins. Google may release an OS update but it isn't necessarily adopted until the OEM has had a chance to evaluate the feasibility for a particular phone (will it run with our skin and will it run on our particular set of hardware?). If the new update won't function with the OEM skin, no dice!

If the phone's bootloader can't be unlocked, OS specific kernels can't be updated. There are workarounds but they are a kludge at best.

There is also the matter of carrier specific apps included with the phone aka bloatware. Many people root their phones in an effort to get rid of the bloat and to provide a smoother experience. The carriers frown on removing their apps but can do little to stop people rooting their phones.

Looking at Motorola phones on Verizon in particular, from what I understand, it's basically a combination of:

1) Carriers lusting for control. Apparently Steve Jobs wanted to go to Verizon with the iPhone, but Verizon has an insatiable hardon for controlling their phones (look at how several years ago, they limited the original Razr for instance from using Bluetooth for anything but headsets, even though Razrs in general were more than capable of using Bluetooth for things like getting pictures of your phone).

2) Carrier's custom skins/etc are usually jury-rigged on top of whatever the current build of Android is. So naturally, when 2.3 turns into 4.0 for instance, everything breaks because the skin was based on janky exploits in 2.3. So months are wasted getting the skin to work on 4.0, then more months are wasted on getting Verizon to approve it (presumably to make sure that the Verizon shitware doesn't completely crash the phone).

Yah, we had false hope when the Droid launched and Verizon talked big about staying out of the way of what goes on phones and how they are updated...that changed fast. At least my Droid got updates fairly quick, other than not getting the last 2.3.x update (thank you Cyanogen.) Nexus is nice that it has no Verizon apps on it pre loaded, while the S3 has it all over.

"It's disappointing..."It isn't disappointing, it's downright scandalous. Jesus, at this rate, by the time Google releases 5, Gingerbread is still going to be the dominant Android OS. The more Google and the carriers are given an effective free pass on this issue by tech writers and users, the more they'll carry on with it. So please man up and kick the shit out of them both so that the situation changes. In other words, stop fucking apologising, shrugging your shoulders and coming out with lame excuses ("...it's the carriers fault", "Google can't do anything", etc).

2) Carrier's custom skins/etc are usually jury-rigged on top of whatever the current build of Android is.

Speaking as someone who used to work for a carrier, this isn't strictly true. Carrier skinning is performed by the OEM and no jury-rigging or use of "janky exploits" are needed since the OEM - naturally - has direct access to the source code.

There is a common misconception that OEMs ship pristine phones to carriers who open them up, use some magical tool to force a load of additional code onto the phone, re-seal them up in such a way that they look like they've never been opened and sell them on without voiding the original OEM warranty in any way. It just doesn't (and can't) work like that.

(Note: I'm not defending the carrier practise, just pointing out how it works)

The faster this balance shifts, the sooner users (and developers) can benefit from all of the work Google and others have done on Android in the last year or so.

Yes, but what happens when the next major Android update comes out (4.5? 5.0?). The story will just repeat, now with a majority of users stuck on ICS/JB and only 1% running the current version (5.0 or whatever).

My Optimus 2X which I bought in November 2011 finally got updated to ICS in December 2012. That kind of waiting is just unacceptable. Google needs to either fix the underlying problem or simply stop developing Android for 2 years to let everyone catch up.

Another challenge that leads to delays is OEM additions to the basic interface with proprietary skins. Google may release an OS update but it isn't necessarily adopted until the OEM has had a chance to evaluate the feasibility for a particular phone (will it run with our skin and will it run on our particular set of hardware?)....There is also the matter of carrier specific apps included with the phone aka bloatware. Many people root their phones in an effort to get rid of the bloat and to provide a smoother experience. The carriers frown on removing their apps but can do little to stop people rooting their phones.

This seems to be the major problem, and by keeping it their propriety skins and apps to themselves they'd have to go retest everything per device per update.So first Google releases an update, then the OEM has to add their magic secret drivers, change and test their custom UI and then that gets pushed to the carriers who add their own special brand of "you don't want this" and "this should be available by default, but now you have to buy an app for it" magic to it.

I can easily imagine that all that customization is just to much work and effort to test on each device every time and update comes out. It'd be great if OEMs just made their device run on the default Android, so that if people were inclined they could just go for that.

It'd be great if OEMs just made their device run on the default Android, so that if people were inclined they could just go for that.

Presumably, they think their custom UI is product differentiation from all the other Android devices. If everyone's running the same OS, the only real differentiators are hardware specs, and a lot of people don't really care about dual vs quad core or 4.5" vs 4.7". A few fancy transition animations might actually make the difference when standing in the store (as stupid as that sounds).

I went into a store the other day, and looked for a low end Android phone (ie cheaper) that ran 4.x (Ice Cream Sandwich / Jelly Bean). They didn't exist in the store I was in - they were all 2.3 devices.

If Google doesn't manage to change that, Android 2.3 will be their XP.

I feel like this could be avoided if manufacturers released less phones. Instead of releasing twenty new phones a year and never / barely updating the software on them, they could go the Apple route and release less but ensure they have updates available for so many years after the release.

Remember HTC's statement that they would release less phone models every year? We got the One X, One S and One V, and just when it seemed like they would do a high-end / mainstream / value phone once a year to simplify their product line and development, they abandon software updates for the value model and released a dozen more phones.

It's hard to get excited for a new android phone when there's one coming out every other week. Now, with Jelly Bean being so responsive (or so I hear - my HTC Sensation hasn't gotten an update yet, and probably never will), I think it's a good time for these companies to reduce the size of their product lines and try supporting their hardware with updates for, say, two years. Maybe then we'd see much faster uptake of new versions of Android.

Was there something inherently bad about Honeycomb that made manufacturers want to skip it? Or was it bad timing, bad update policy, something else?

(This question coming from a non-Android user)

Honeycomb was purely for tablets, and the source code was never publicly released.

On top of that, I think most Honeycomb tablets (such as the Xoom) received upgrades to 4.x versions of Android. This is in contrast to Gingerbread devices where the majority of them were not upgradeable past 2.3.x.

You might as well face it, you're locked into your manufacturer. How about pinging Samsung and say "Fix your stupid device"... or buy a Nexus if you want to blame Google.

Erm, no, not Samsung's problem. It is a generic Android issue. Do a Google for "insufficient storage available" and you'll see that all Android phones suffer from it. The only solution offered is to root the phone or install an app to move your apps onto an SD card. But the disclaimer is that some apps won't work after that.

Why should I root my phone when it should work out of the box and keep on working. I've got 11GB available storage, yet I can't update my apps.

I went into a store the other day, and looked for a low end Android phone (ie cheaper) that ran 4.x (Ice Cream Sandwich / Jelly Bean). They didn't exist in the store I was in - they were all 2.3 devices.

If Google doesn't manage to change that, Android 2.3 will be their XP.

The worst part is that it isn't even due to lack of capable hardware in the low end. My HTC Legend is now running a custom Jelly Bean ROM (Android 4.1) quite nicely. We're talking about a single-core, 384MB RAM, 3-yr-old phone. If there's any reason low-end phones can't technically run JB, it's not an Android limitation but a manufacturer/carrier one (skinning, customisation, crapware...).

Another thing that hurts Android is that while the OS itself is open source, some parts don't seem to be, especially drivers. As I said, I'm running JB on my Legend, but I've lost native WiFi tethering capability due to problems in getting the right drivers for this version of Android. AFAIK there are no ICS/JB ROMs for this phone that have native WiFi tethering for this reason. Maybe Google should demand that manufacturers release the source code for their implementations, at least core OS + drivers?

Ruester wrote:

I would love to have Jellybean, but HTC drags their feet on upgrading their devices!! My next phone will be a Samsung or similar... they have reasonable upgrade delays

Actually, HTC is one of the better manufacturers when it comes to updates, at least if you go by a number of websites, including Ars:

Quote:

Although HTC is now one of the less popular manufacturers, it has been the overall winner in terms of getting updates out to users quickly. Like Samsung, it benefits from Google partnerships, particularly in the early days. HTC made the first Android handset, the Dream/T-Mobile G1, which received its first two updates the same month the updates were released (they're accounted for as "0"s in the chart above, which is why they don't appear). A later partnership handset, the Nexus One, had two versions on different carriers that got a total of four updates between them that took two months or less.

Of the phones surveyed, HTC has never lagged longer than a year between an update release and its issuance to a phone. The company's biggest offender was the Evo 3D, which didn’t get its update to 4.0 from 2.3 for ten months. HTC’s time-to-update average is a bit skewed due to the fact that it got in on the ground floor of Android when updates came relatively easily, but it is still the most impressive of all the manufacturers, with a 4.7 month update average.

Which of course doesn't mean much when you have one of their phones that isn't getting updated...

You might as well face it, you're locked into your manufacturer. How about pinging Samsung and say "Fix your stupid device"... or buy a Nexus if you want to blame Google.

Erm, no, not Samsung's problem. It is a generic Android issue. Do a Google for "insufficient storage available" and you'll see that all Android phones suffer from it. The only solution offered is to root the phone or install an app to move your apps onto an SD card. But the disclaimer is that some apps won't work after that.

Why should I root my phone when it should work out of the box and keep on working. I've got 11GB available storage, yet I can't update my apps.

How stupid is that?

Andy

That's not the only solution, you can also delete file cache, you can explore your application director and look for stray .odex files that were not removed when you may have deleted an application (look for any odex files that do not have a matching apk).

Erm, no, not Samsung's problem. It is a generic Android issue. Do a Google for "insufficient storage available" and you'll see that all Android phones suffer from it. The only solution offered is to root the phone or install an app to move your apps onto an SD card. But the disclaimer is that some apps won't work after that.

Sorry, it's Samsung's problem.

Android phones have multiple partitions. Applications and user data (contacts, messages, settings, etc) are stored in /data. Data shared between applications (music, documents, other media) is stored in /sdcard. Historically, /sdcard usually meant the removable SD card. For newer phones, it almost always points to some for of non-removable internal storage, with the removable SD card being mounted somewhere else. Let me make this clear: /sdcard, is not your removable SD card on newer devices.

With both /data and /sdcard on the internal storage, they can be both on the same partition, or on or two different partitions. If they are on the same partition, storage can be flexibly shared between both. But maybe they can't be on the same partition, if different (usually slower) hardware is used for /sdcard.

If you run out of space in /data, you can't install apps. You can move (some, not all) apps to /sdcard, but that only helps if /sdcard is a different partition (internal or external). You can't move apps to the removable SD card, if it is mounted somewhere else (as is the case on most recent devices).

All these decisions are up to the OEM. Google doesn't decide how much space goes into /boot, /system, /recovery, /data, /cache, /misc, /sdcard, etc. Google doesn't decide how much space manufacturers reserve for /boot, /system, /recovery, etc (which are read-only and non user accessible), and how that affects advertised space. Google doesn't decide whether /data, /sdcard, /cache, etc, are on the same or different partitions.

If you've filled up your /data partition, with plenty of available space elsewhere on the device that's your OEM's problem. Unless you were expecting to use your removable, external SD card to store apps. That's frowned upon, and deprecated in recent phones.

"it's rare to find a new device that isn't at least running Ice Cream Sandwich"

I hate to be the bearer of bad news, but that isn't quite true. If you are looking at new phones, that cost between $100 - $300 with a new contract, you're right. But go shopping with a teenager who is looking for one of the free/cheap phones and those counters are flooded with devices still running 2.3 and even a few with 2.2. And I doubt any of those phones will ever get an upgrade.

Andrew Cunningham / Andrew has a B.A. in Classics from Kenyon College and has over five years of experience in IT. His work has appeared on Charge Shot!!! and AnandTech, and he records a weekly book podcast called Overdue.