KitKat statue

Android updates remain a messy, unpredictable business — and although Google and manufacturers have made progress in the past year, there's still much work to be done ...

The speed at which new platform updates arrive remains one of the major pain points of owning an Android device. Whereas Apple rolls out iOS updates instantaneously across much of its product line — the platform absolutely was designed with that in mind — Google’s lack of direct control over the firmware running on most of the world's billion or so Android devices means it’s impossible for it to do the same.

In an article published in late 2012 we discussed exactly why this is the case. The “open” nature of Android, the vast differences in hardware across the entire ecosystem, not to mention the large number of moving parts required to get most updates pushed to users, all contribute to the lengthy delays we’ve come to know and hate. As we said almost 18 months ago, it’s a weakness that’s built into Android’s DNA, and not something that can be easily overcome.

Google and the manufacturers are tackling Android updates on multiple fronts.

Yet over the past year we’ve seen new endeavors by Google and some leading Android manufacturers to tackle this seemingly impossible problem. There have been efforts on multiple fronts: Firstly, the introduction of new features and APIs through Google Play Services, and the spinning of major Google apps out into the Play Store, allowing them to be updated independently from the OS. Google has put future Android code into the hands of OEMs earlier than before, through the “Google Play edition” program. There’s also evidence that manufacturers are seeing the competitive value in being first (or at least quick) with new OS versions. And OEMs, particularly HTC and Motorola, are getting better at communicating details of these updates to end-users.

To be sure, it’s no magic solution to the gargantuan task of moving the entire Android ecosystem forward. And the update situation for non-flagship devices remains something of a crapshoot. But it’s a start, and a big step in the right direction. And as we move from Jelly Bean into the KitKat era, it’s enough to give us some hope for the future of Android updates.

Read on to find out why.

Google Play Services — important new stuff without an OS update

Conventional wisdom states that if you want to get new APIs (application programming interfaces), features and security improvements pushed out onto a mobile device you need to prepare an OS update, with all the waiting and hoop-jumping associated with that. Yet for the past year Google has been bypassing that whole process through Google Play Services, a development platform that sits on top of Android on version 2.2 (Froyo) and above.

Google can update Play Services in the background, without users even knowing

First pushed out in September 2012 with an update to the Play Store app, Google Play Services lets developers interact with Google’s services and your device through a set of APIs that live outside of the OS layer. The genius of this is that Google can update Play Services in the background, without a firmware update, and in most cases without users even knowing it. (Similar to the way updating the Chrome browser works on a Windows or Mac computer, for instance.)

Our own Jerry Hildenbrand breaks things down in his write-up on Play Services following last year’s Google I/O conference:

Being under complete and total control from Google means that the folks who built your phone, as well as the carrier you may have bought it from, are completely out of the picture. You won't have to wait six months or more to get the new service APIs. In fact, Google says they are able to get them pushed to the majority of devices in about a week after they are updated. If you take one thing away from all this, knowing that Google decides what the service APIs are, who gets them, and when is the important part.

Google Play Services APIs underpin Google Play Game Services, which was launched at I/O 2013 and enables cloud save, achievements and leaderboards in games. As such, every Google-certified device running Android 2.2 or above got these new gaming features in the space of a few days. Had Google relied on traditional OS updates to roll out these new features it would’ve taken several months for them to propagate. Many older devices running Froyo and Gingerbread would likely never have seen Google Play Games at all.

Google Play Games

In the same way, Google last year launched the Android Device Manager, which allows users to track, remotely control and wipe their devices over the web. Same again with the move from Google Talk to Hangouts over the summer. These features arrived in a few days across almost the entire Google-controlled ecosystem without anyone having to wait for an OS update.

Of course you can’t change everything through Google Play Services, but the platform is an important step towards making Android OS updates less important, and bringing new features to everyone in a short space of time. For Google, it also has the benefit of incentivizing hardware manufacturers to release Google Play-certified devices — if you’re outside of Google’s umbrella, you don’t get new Play Services features and APIs.

Moving the Google Experience onto the Play Store

Just as new features and APIs can now be pushed out through Google Play Services, many of Google’s core Android apps are now updated through the Google Play Store. That’s been the case for a while, and it’s a process most Android owners are very familiar with. But not too long ago a new version of Gmail, for instance, would require Google to send out an updated Google Mobile Services package to manufacturers and wait for them to push it out as part of an OS update. That’s exactly as long-winded and tedious as it sounds.

Not long ago, a new version of Gmail would require an OS update.

These days, thankfully, most of the “stock” Google apps live on the Play Store. The few notable exceptions include the Photosphere and HDR+ camera app, as well as the Nexus 5 launcher (at the time of writing, at least) and contacts/dialer apps. SMS integration in the Hangouts messaging app takes this a step further, allowing owners of “skinned” devices to use a Google app to handle all their messaging. (Though we're still far from convinced that the inclusion of texts in Hangouts provides much benefit to anyone besides Google.)

Regardless, we’re very close to the core “Nexus” experience living on the Play Store as a set of apps that can be updated independently of the OS. And the end result should be a more consistent, more Googley user experience across the Android ecosystem. It also means customers who pick up a phone or tablet running a third-party UI (e.g. HTC Sense or Samsung’s TouchWiz) need not be excluded from some of the features of Google’s Nexus devices. (Notable exceptions, as we've mentioned, include the Nexus 5 launcher and dialer.)

Google apps

Some argue that pushing new APIs into Google Play Services and “stock” Android system apps onto Google Play makes Android less open. That’s one way of looking at things — and for sure, there’s a greater gap between AOSP (open-source Android) and what ships on the Nexus 5 than was the case with the Nexus One. But that’s not particularly new or surprising — after all it mirrors Google’s approach to open-source with the Chrome browser and Chromium open-source project. And end-users are better served as a result, with new features and apps arriving on handsets more quickly through Google Play and Google Play Services. Naturally, Google also benefits through the extra control it can exert over the Android ecosystem.

It’s a win for consumers, and a win-win for Google.

The Google Play editions and updates as a competitive advantage

When Hugo Barra announced Google’s intention to sell a “stock” Android Galaxy S4 on-stage the I/O 2013 developer conference, it wasn’t immediately clear why the company was doing this. Was Google simply creating a phone for the vocal minority of users who want “stock” Android on every device? Was this the death knell of “skinned” Android phones? Well, not quite, though it seems speeding up the deployment of new Android versions is part of the GPe program’s mission.

Android user experience director Matias Duarte hinted at this during the Android fireside chat event at this year’s I/O conference: “One small sign of our efforts [with OEMs and updates] is what we announced yesterday, the Galaxy S4 that has the Nexus software experience, will have more timely updates.” (9 minutes, 18 seconds into the video below.)

The Google Play editions program is about more than just making devices for nerds.

But the impact of Google Play editions goes far beyond simply giving buyers a viable non-Nexus option with the latest (stock) OS version and a quick path to future Android versions — the inexplicable arrival of the GPe Moto G seems to prove that. Pushing “timely” updates out onto Google Play edition phones involves getting working, work-in-progress code into the hands of Samsung, HTC, Sony, LG and Motorola in advance of its arrival through the regular channels. That presents obvious advantages when it comes to familiarizing engineers with future versions of the OS — advantages that in the past may have been exclusive to Google’s Nexus partners.

Currently the GPe program is limited to a handful of devices, but there’s no reason for it to stay that way forever. Indeed, one source suggests to us that the program has always been open to all OHA (Open Handset Alliance) members, so we wouldn’t bet against more device makers jump onboard in the future. The ideal situation for Google would be for every major manufacturer to be churning out Google Play edition gadgets at regular intervals — it’ll be interesting to see whether this ever becomes a reality.

However much Android enthusiasts praise them, Google Play edition devices are an extremely niche product lineup. Those outside the U.S. don't even have the option of buying them. And there’s only so much Google can do to speed up OS updates on non-Nexus, non-Google Play phones — the rest of the engineering effort has to come from manufacturers themselves. Fortunately we’ve seen a renewed emphasis on Android updates from some of the major players — and better communication all-round from OEMs on this issue.

As previously mentioned, Samsung and HTC are good examples here. Both managed to push out Android 4.3 updates for their "skinned" flagship handsets three months after its announcement, and HTC in particular has taken things a step further by bringing KitKat to unlocked developer versions of its HTC One just one month after the open-source code drop. Further KitKat updates from these two are expected imminently.

Who would've thought that a Motorola phone on U.S. carriers would be among the first to a new Android version?

But even HTC was beaten to the punch by Motorola, which pushed out Android 4.4 for its Moto X in mid-November. At the time Moto wasn't a Google Play edition manufacturer, but its phones run software very close to vanilla Google Android, meaning there was less stuff to change when the new OS version rolled around.

Still — who would've thought a year ago that a customized, U.S. carrier phone would be among the first to a new Android version?

The Verizon Moto X’s example is important for a few reasons. One of the most onerous and time-consuming parts of the update process is carrier certification — the recent failure of an update for the Verizon HTC One to pass certification resulted in a delay of over a month. Yet Moto managed to not only complete its Verizon Moto X firmware but also get it certified and rolling out onto devices in just a few weeks. Who knows exactly how this was accomplished so quickly, or whether any money changed hands to make it happen, but it at least shows the problem isn't insurmountable. The recent arrival of KitKat on 2013 Verizon Droid phones also proves this isn't a one-off.

The newly Googlified Motorola seems to view updates as a competitive advantage. Its unique position as "a Google company" means it has different priorities to its competitors, and it's clear that timely updates are pretty high up that list. Nevertheless, Moto isn't the only manufacturer to start seeing fast OS updates as a way to stand out from the crowd. At least one of the major OEMs has recently hired new engineers for the specific purpose of speeding up the deployment of Android updates, sources tell us.

Communication and updates as good PR

Getting finished code out there is important, but so is communicating update plans to your customers, and HTC and Motorola are leading the way in this area. High-profile individuals at both companies have regularly taken to social networks to provide information on the status of future firmware. Right after KitKat launched, HTC America President Jason Mackenzie committed to getting the new OS on carrier versions of the HTC One within 90 days. And HTC has been more open than any other company in discussing carrier certification, letting update-hungry users know how things are progressing in advance of the eventual OTA push. The company recently launched an updates portal page for some U.S. devices, showing each carrier version's progress through the journey from development to deployment.

KitKat HTC One

This combination of faster updates and specific timetables, along with periodic updates via official channels has generated a lot of good will for HTC in recent months. Motorola, too, has enjoyed a wave of good publicity off the back of its swift KitKat update process. But let's remember that both companies are underdogs the current smartphone market. Samsung, by comparison, continues to sell a gazillion phones while sharing comparatively little about upgrade plans ahead of time.

Arguably, fast updates are a marketing expense as much as an engineering task.

So you could argue that this new, very transparent approach to updates is just as much about good PR as it is providing customers with new stuff. While consumers are more tech-savvy than ever, most still neither know nor care which Android version they're running, especially if it's on a device layered with manufacturer customizations. KitKat with HTC's Sense 5.5 software, for instance, is almost identical to 4.3 Jelly Bean with that version of Sense. When the user experience is governed so much by the manufacturer's "skin" and the nuts and bolts dictated by the ever-changing Google Play Services, the tangible benefits of an all-new version of Android are less obvious. So when a manufacturer hurries out an update with a new Android version but few user-facing changes, the value in doing so surely comes from good publicity rather than being able to offer a noticeably enhanced product. Effectively, it's a marketing expense as much as an engineering task.

And early adopters are left having to start the update cycle all over again when Google ships a maintenance "point" release, as it did twice in quick succession with KitKat 4.4.1 and 4.4.2. To play devil's advocate for a moment, perhaps this is why phone makers and carriers have historically approached firmware updates with caution.

No silver bullet

Up to date

Every development we’ve gone over above is important, but no one is a total solution to Android’s update challenges. Even now, some serious roadblocks remain in place despite the advances made in the past year.

Chipset characteristics, not a phone’s age, can determine whether it gets updated or not.

Certain factors are still outside of manufacturers’ direct control. Phone makers are reliant on BSPs (board support packages) — code from chipset manufacturers like Qualcomm and NVIDIA — in order to begin work on firmware updates. As shown in HTC’s recent update timeline graphic, if the chip maker opts not to produce an updated BSP for a particular chipset, all bets are off. This is what’s believed to have scuppered update prospects for the HTC One X, S and X+, as well as Google’s own Galaxy Nexus. The nature of this process means that chipset characteristics, not a phone’s age, can determine whether it gets updated or not. Consider that the One X+ debuted around the same time as the Droid DNA — the latter is in line for KitKat, the former’s stuck with Jelly Bean. That's not great for consumers trying to determine which phone will be best supported.

Snapdragon 805

Imagine the outcry if iPhone 5 owners on a certain carrier had to wait an extra month for iOS 7.

Other annoyances include the haphazard nature of update rollouts based on country or carrier. Even outside of the U.S. market, which is dominated by the big four operators, the timing of the same software update can vary by weeks or months depending on where you live and which carrier’s version of the (exact same) phone you have. This muddiness leads to confusing and frustrating experience for Android owners that those on some other platforms don’t have to deal with. Imagine the outcry if, for example, iPhone 5 owners on a certain carrier had to wait an extra month for iOS 7.

The problem here has to do with the large number of moving parts involved in international rollouts — different carriers in different countries, and regional divisions of OEMs all need to talk to each other.  Some regions get done customizing for their device before others, then some need to be sent to carriers for further customization and approval. The rollout schedule is often staggered to the point where we as tech writers have difficulty keeping track of it. That being the case, what hope is there for normal people who don't follow this stuff on a daily basis?

The same can be said for staged rollouts, the practice of pushing out updates to a small percentage of devices initially, then increasing this to cover the entire user base over time. Proponents say this is needed to ensure updates work correctly across large numbers of devices in the wild. Yet announcing new features and then making the some users wait an extra two or three weeks to get them does nothing to improve Android’s image problem in this area. Maybe we’re oversimplifying, but surely the solution here is to just not release updates which might be broken.

Fighting the battle you can win

The updates problem might not be solvable for the entire ecosystem, but that doesn't mean Google can't make things better.

This all ties into one of the main complications we discussed in our Sept. 2012 article — the sheer variety of hardware on which Android runs. As long as hardware and software customizations are spread so far over the map, many devices will simply never end up running the latest version of the OS. Unless the nature of Android changes — and it won’t, because it owes its large market share to its diversity — there’s no way Android will ever be able to enjoy iOS-like figures of 70+ percent of users running the latest version.

If you’re looking at the big picture of the entire Android ecosystem — and that’s a very big picture indeed — new OS rollouts will continue to be relatively slow. Jelly Bean will probably continue to dominate the overall platform stats for much of 2014. And getting Android 4.5 — or whatever the next major version is — onto every single device weeks after launch is of course a pipe dream.

Android platform numbers, Dec. 2013

Instead of trying to achieve the impossible, Google is choosing to fight the battle it can win — helping to get high-profile, flagship devices (particularly in the U.S.) up to major new OS versions as quickly as possible. Mid and entry-level handsets will still have to wait their turn, but hopefully these too should benefit from the infusion of high-end momentum.

The two main ways in which Google is addressing the Android updates problem — on devices directly through Google Play and Google Play Services, and with manufacturers through the Google Play editions program — will continue to be important in the coming year. Manufacturers should continue to see quick updates as a way to compete in an increasingly cutthroat industry, and we might hope for a streamlining of the rollout process across carriers and regions as a result.

Buyers wanting a Nexus-class device will have greater choice, and manufacturers will work more closely with Google as a result, hopefully to the benefit of their broader user base. Elsewhere, Google will quietly augment most devices released in the past three years with new features and APIs through Play Services, giving them a new lease on life without new firmware. The updates problem might not be solvable for the entire Android ecosystem, but Google is tackling it intelligently, and slowly but surely we’re starting to see the results of its efforts and those of its partners.

And that’s enough to give us hope for the future of the Android updates. We’ll be watching with interest in 2014 to see how things pan out. Who knows, maybe Google and friends have a few more tricks up their sleeves.

Why you'll never have the latest version of Android (Sept. 2012)