It’s like geek Christmas: The newest version of Android comes out and it's full of exciting new features and designs. You rush to the Android Developer portal to learn about all the new functionality and check your smartphone manufacturer's website to see when your phone will receive the latest and greatest from Android.
Then you wait. And wait. And wait.
So why exactly does it take so long for Android updates to reach your phone? The signal originates at Google, but an update must traverse a complicated series of portals through manufacturers, chipset makers and carriers before it finally reaches your smartphone.
Google’s Nexus Smartphones Vs. The Rest Of Android
Unless you rock a Nexus device, there's a fairly good chance you're going to have to wait several months for the latest version of Android to hit your smartphone or tablet.
For instance, the initial release for Android 4.4 KitKat was October 31, 2013. As of January 8th, 2014, only 1.4% of Android devices that touch Google servers registered as using KitKat; Android 4.3 Jelly Bean was released in July 2013 and is only installed on 7.8% of Android devices. Those numbers will continue to climb, but the fact of the matter is that it takes months for new versions to come from the engineers at Google, through the manufacturers and carriers and onto your smartphone.
The wait times for new Android updates is appalling, especially when you consider how Apple can push its latest version of iOS to millions upon millions of users at once. Apple says its latest update, iOS 7, is currently installed on 80% of all iOS devices; again, KitKat is installed on less than 2% of all Android devices.
So why can’t Android versions reach all of its users in a timely manner? The answer is more complicated than a one-to-one comparison of Apples to Androids.
“We understand that there are different versions of Android available and we want to get people on the latest versions,” lead Android engineer Dave Burke said in a ReadWrite interview last year. “There are two things to understand. One is I see an Apple diagram of Android and they show how many people have updated to the latest versions of iOS. Well, first of all, if you want to do those comparisons you should compare that to the Nexus program because that is comparing apples to apples in that case. For the Nexus program, about 90% of them are updated to the latest version within 24 hours.”
How An Update Navigates From Google To Your Smartphone
The fact of the matter is that most Android devices aren’t Nexus smartphones or tablets. They're built by Samsung and HTC, Motorola and LG, ZTE and Huawei, and a dozen other smartphone makers out there. Each one of these companies has its own engineers, partnerships, skins and launchers that must become compliant with the newest version of Android once Google releases the source code.
But keeping everything and everyone up-to-date isn't that simple. First of all, Google sends out what it calls a Platform Developer Kit (PDK) to manufacturers, which is kind of like the hardware version a software developer kit (SDK) that app developers use to integrate features into their software. Google also must distribute the source code of the newest version to chipset makers like Samsung and Qualcomm, which will determine if they can support it.
If the phone's chips can support it, the chipset makers will tell their partners that their smartphones can or cannot accept the latest Android version on their devices. If they can't install the newest Android treat, those devices are forced to remain on the version of Android they are currently on, and it ends there for those phones. But if it the chipset makers approve, they send a “Board Support Package” (BSP) back to the manufacturer to implement into their smartphones and tablets.
But it doesn’t end there. The manufacturer at that point must get its team of developers and engineers to implement the newest version of Android, at which point, it's time for testing.
Testing is perhaps the biggest bane of any manufacturer, developer or cellular carrier that works with Android. Because testing is where the carriers come in.
Most Android manufacturers have agreements with the likes of AT&T, Sprint, T-Mobile and Verizon on what can and cannot be allowed on a device (for a variety of reasons) and what the carrier says must be included, like its own apps (often called bloatware). Once the carriers review the modifications, they send it back to the manufacturer to institute.
Then there is more testing, this time by the carriers, regulatory authorities (like the Federal Communications Commission) and Google. Both the carriers and Google must issue a “Technical Acceptance” (TA) before the updated version of Android can be shipped to end users.
The route from Google to an over-the-air update is fraught with complications. Sometimes the hardware on a device won't support the newest version of Android (something Google is trying to eliminate with the smaller memory profile in Android 4.4 KitKat). Sometimes the manufacturer would rather ship a brand new smartphone than issue an update to an old one. Maybe the carrier would prefer a new smartphone for its retail stores than to use its data pipes to update old versions. Carriers and manufacturers often drag their feet, preferring new devices than updates to old ones.
See the infographic from HTC below for a visual representation of the flow of an Android update from Google to consumer.