Phone UpdatesTablet Updates 346 days ago | | 6 Comments

Android Update Release Cycle Explained

3faf8ada_smush_cycle-com

In the last few weeks I’ve been exposed to a lot of bad press around the Android release cycle. Much of which is due to journalists who simply have not done their homework with regards to the Android release cycle – misconceptions due to a lack of understanding on how new Android releases are created and delivered to handsets. It’s not an executable file that Google sends out to your phones; in fact Google has very little to do with the update schedule.

Here’s how the Android release cycle works:

  • Google internally develop and test an Android release. This release is “pure” Android that does not have any of the customisations, software components (drivers) that marry to the hardware, manufacturer customisations, etc.
  • Google will generally progressively test the new release (e.g. to make sure it works) on a real-world phone. This phone generally becomes the base for the next Nexus device for that release.
  • After intense testing of the pure version, Google will hold a press release, announcing the features of the upgrade, and generally also announce the Nexus device. This is the stage which begins journalist-release confusion, because what Google are actually doing is demonstrating the new features of the Android OS far ahead of time, as they are soon to release the SDK which contains an emulator image with an implementation of the new features, as well as the source code. At this stage a company such as Apple would still be tight lipped on features, but due to the open source nature of Android this becomes known to the public and thus it is in Google’s best interest to publicise the new features.
  • Soon after the press release, Google will release the Android SDK which contains all the relevant tools/classes to develop for the new OS, as well as the emulator image containing new features.
  • Following this, Google will then release all of the Android source code. Only at this stage do manufacturers get direct access to the next version of the OS and begin working on the upgrade for their handsets. In the Apple (release) world, the public still has no idea what is in the next version, because iOS is not open source and Apple does not need to provide the source code to any other parties (no one else manufactures iOS devices and public will never get to see it), and they have only a handful of handsets and can just do all their internal building and testing themselves. In the case of Android, because it is Open Source it is in Google’s best interest to hold a press conference to announce the features, because the source code is freely available and the public would find out regardless.
  • An example of the stuff the manufacturers then need to create for each of their handsets is listed in the image attached to the article. The top 3 quarters come from Google and the AOSP (Android Open Source Project). The bottom quarter is device-specific and is what the manufacturers spend much of their time “doing”.
  • Most manufacturers will concurrently develop their own customisations over the top of the default Android look, feel and functionality (e.g. HTC Sense and TouchWiz, including many of the blue sections at the top of this diagram). Devoting resources to developing these customisations also takes a significant amount of time.
  • They then need to rigorously test the device themselves, perform User Acceptance Testing, test again. In the Apple world the public still has no idea what is in the next release, but in the Android world Google announced the release features and dropped the code several months ago. Normally at this stage Google has had a head start with internal testing of their Nexus device from day 1, and this is around the next Nexus device is released.
  • Finally, the update is passed on to carriers (phone companies) to test. Here is where the real bureaucracy begins, and where an unnecessary 1-2 month overhead is usually added just to do a bit of network testing (this is something that should really only take 2-3 days if no problems in my opinion..).

So the perceived “lag” for Android updates is really just that – a perception. It’s about when the public is told about the device and it falls down to Android’s open source nature. The alternative is to close the doors, scare everyone away and kill the Android handset developer community – just to receive the updates on the same time schedule.

Notable is that while I fly the Android flag, Apple’s release cycle is definitely tighter. But the finger is generally pointed at Google, and what is not realised is that it is not Google’s responsibility to be building drivers for hardware for every handset released (in fact this is completely infeasible). They aren’t the ones producing the phones so there’s no way they would have the required knowledge on handset, hardware and associated software. IIRC Apple has the carrier testing part fleshed out – they either don’t have to give the testing to the carrier or do minimal testing. The “one handset to rule them all” thing also far simplifies the resources required to roll out new updates, and Android handset manufacturers are slowly starting to get this (Samsung and most recently HTC). If carrier bureaucracy could be chopped through we’d start to see some nice improvements.

This is a community blog post by Reece Wagner. You can contribute too!

Written by : Reece is a member of the Android Australia community. He wrote the above post through contributing to AA and submitting his own article as a Community Blogger.
  • Paul Miller

    While this may be reasonable, I really didn’t enjoy waiting 5-6 months after the AOSP ICS code was released to have it on my SGS2. Even when it came there where a vairety of bugs as well that just made the whole thing boil me over. Wifi issues, battery issues, you name it..

    • Paul Miller

      PS. thats why im now using that lovely htc one xl you see in my avatar :p

  • Reece

    Paul – As far as I can see now, it looks like Cyanogenmod ICS for the Galaxy S2 is still at nightly stage. Normally Cyanogenmod is ahead of the curve from the manufacturers, but the fact that there isn’t even a release candidate out yet should be an effective enough measuring stick to show Samsung are on top of things.

    Apple is generally used as the update benchmark when discussing all things Android – so if Google never released the Galaxy Nexus and Android wasn’t open source, you’d be hearing about ICS about a week before your 5-6 month wait and be none the wiser.

    Not saying Samsung haven’t screwed up the delivery (with the Wi-fi issues etc), but in terms of timeframe, 5-6 months is quite reasonable vs. the release dates of new ICS phones and upgrades, especially if you consider the Galaxy Nexus an anomaly that is about to cheat its way through the system!

    • franky

      That really does make sense. Apple are always completely closed about everything, it makes it hard to compare other open manufacturers to them. now that samsung have so many sales and such success it feels natural to pit them against apple fairly.

      The one thing i’d like more of an explanation about would be the rigorous testing of telcos. Why do they add an extra 2 months onto these updates? I see you’ve said it should be just a few days, but what on earth are they doing back there? It seems a bit ‘Apple-y’ to me…

  • Reece

    Vodafone of all telcos actually made a really good post about this release cycle – check out part 4: Carrier Customisations here: http://blog.vodafone.com.au/blog/the-android-software-journey-part-2/ and the testing section here: http://blog.vodafone.com.au/blog/the-android-software-journey-part-3/.

    And Vodafone spell out issues they have picked up in their own testing here: http://blog.vodafone.com.au/blog/the-android-software-journey-appendix/

    Not sure where Apple do this process differently – maybe they throw some of their own resources at carrier testing, or just set a deadline for all carriers. Testing would also be much simpler in their world, despite Android having a much larger handset footprint Apple has the global market covered with 2~ or so phones at a time only, which would make the process simpler. Android manufacturers seem to be “getting it” in terms of one device to rule them all, but there’s always gonna be those niche phone markets with webtops, cheapo phones etc that these companies are going to play in so they can meet the needs and turn in some dollars.

  • http://www.gundamaustralia.com Cam

    i think the main gripe people have is that at any stage after google, feet can be dragged, behind closed doors, with no repercussion (lets not count angry customers because clearly they aren’t numerous enough to matter), at a minimum this burden falls on googles with the nexus devices but should fall on them for all androids, there is absolutely no set limits for a manufacturer to get updates/os’s out to telcos and no limit on how long telcos can take to “test” a device and worst of all theres no set life span for phones (this is probably not googles fall and a discussion for later)

    the problem of course is that google is open source and everyone are free to do what they want google have no rights or method to try and apply any control and doing so globally would require changing the entire ecosystem, in a perfect world google would say to manufacturers you have 3 months to get updates to telcos and then telcos they would be told, 1 month testing max, if companies didn’t comply they’d have their certification revoked or they’d get updates after other companies or something i dont know but some motivation to get timely updates would be ideal, but as said this requires a complete ecosystem redo and it only benefits the end users not profits (directly anyway)

    i would love to see the hammer brought down for nexus devices at least, if a manufacturer wants to be a nexus device maker and telcos want to carry the device they need to adhere to some rules re updates, this seems fair to me and ultimately the true purpose of nexus phones and for all other androids they can stay open source and free to do whatever, the nexus roll on effect would eventually kick them into line anyway, unfortunately for now im stuck with my 3 versions out of date optus Gnex while globally updates roll :)