Editorial - How Google's Project Treble Will (Probably) End The Misery Of Slow Android Updates



Upgrading an Android device to a new version of Android is a rigorous and time consuming process. This process demands a bunch of resources, including skill and monetary investments. The above image summarizes the process that is undertaken to update a phone to a new version of Android. In the first step, Google releases a new iteration of Android along with it's open source code. This open source code is then edited by the silicon manufacturers (like Qualcomm, Mediatek) to suit their chipsets. The silicon manufacturers then pass on this code over to device manufacturers who further modify this code to suit their needs. In some countries like the United States, OEMs partner with local carriers to sell their devices. These devices are termed as carrier locked. On the other hand, devices which aren't associated with any carrier (or which can work with any carrier) are known as unlocked devices. OEMs usually sell their devices in both these variants - carrier locked and unlocked. The unlocked variants of the devices are usually the ones which are sold globally in different countries. To update a carrier locked device to a new version of Android, the OEMs have to work along with the carrier to develop the update. This update then undergoes testing to iron out bugs and stability issues. After the update is certified by both the carrier as well as the manufacturer, it is then rolled out via OTA to the users. Unlocked devices receive updates at a faster pace as compared to carrier locked ones. The carrier locked devices are sold at cheaper rates as compared to the unlocked variants because the user is tied under contract to a particular carrier for a specified time period. The carrier hopes to recover the cost of the device (as well as gain some profit) in the time period the user is associated with them.

One of the major problems in the Android ecosystem is slow updates. Google releases a new Android iteration at the fall of each year. Owners of Pixel, Nexus and Android One devices are among the first to receive the update of the new Android version. On the other hand, owners of non-Google supported devices have to wait for several months before they can get their hands on the latest Android.

Android's latest iteration - Nougat - had been released by Google in August last year. It's been about nine months since Nougat's official release and according to the distribution numbers of May, Nougat powers 7.1% of all the Android devices. While device manufacturers (aka Original Equipment Manufacturers, OEMs) still continue to work on upgrading their previous generation devices to Nougat, Google has had already released the beta builds of Android O. The stable build of Android O would be out in this year's third quarter. Google has also stated that it has shared Android O's source code with device manufacturers and has advised them to start working on bringing up Android O for their existing top-of-the-line devices. There is a conflict in approaches here. Some OEMs are yet to update their previous flagships to Nougat, and now Google is expecting them to start working on Android O.

This trend repeats itself every year. With every new Android version, OEMs have to work upon bringing that new version to their previous flagships, while another Android version waits in the wings to be beta tested. Even though OEMs are desperately trying to catch up with Google's expectations, they haven't been able to do so over the last couple of years. I think this is a vicious circle of unending workload. As I had mentioned earlier, updating an Android device demands resources as well as time. If the OEMs have to catch up with Google's pace of delivering updates, they will have to direct a lot of their resources to cover up for the piled workload. Since most OEMs seek profits, they would prefer to build a new phone instead and direct their software engineers to make the new phone's software instead of working on updates for previous smartphones. It is because of this very reason that OEMs put an end-of-life (EOL) date to their premium smartphone. For budget segment devices, the update scenario is even worse, however I don't wish to start ranting on that right now. I might do a rant on that later though. OEMs don't wish to work on updates for a device post it's EOL because that would then require them to spend money and who wishes to minimize their profits. Once a device reaches it's EOL, it is dependent upon developer communities like XDA for future Android upgrades. Communities like XDA provide users with unofficial means of upgrading their devices to new Android iterations.

Many times it is the silicon manufacturer who is to be blamed. Taiwanese based chipset maker Mediatek is infamous for charging huge sums of money to share the software source code for it's chips. Nexus 5 didn't receive the Nougat update because Qualcomm hadn't updated the necessary drivers for it's chipset to support Nougat.



Google has since long been trying to find a solution to patch the time gap between releasing new versions of Android and OEMs updating their devices. Prior to Nougat, Google used to release preview builds of a new version of Android at Google I/O. It thus came as a surprise when preview builds of Marshmallow were made available in February last year, several months before Google I/O. At the time of announcing the release of Android N's preview builds, Google wrote:

 By releasing a “work in progress” build earlier in development, we have more time to incorporate developer feedback. Also, the earlier preview allows us to hand off the final N release to device makers this summer, so they can get their hands on the latest version of Android earlier than ever.




The above chart shows the growth comparison between Marshmallow and Nougat after their launch. It can easily be made out that the early release of Nougat's preview builds hasn't had much effect on influencing faster update rollouts. Google's Project Treble might finally be able to resolve this longstanding problem.

With Project Treble, Google has redesigned Android's code at lower-level to make it easier for device manufacturers to update their devices without being dependent on silicon manufacturers. Project Treble separates the Android OS framework from the vendor implementation code written by the silicon manufacturer. When Google will release a new Android version, the device manufacturers simply need to update the Android OS framework without the need of updating the vendor implementation. This way the device manufacturers don't have to wait for the silicon manufacturers to update their code for supporting new version of Android. This should indeed help in seeding out updates at a faster pace. We can hope for an extension in the EOL deadlines as well!

Google has said that the Android O developer previews for the Pixel and Pixel XL are powered by Project Treble. Google will be making full documentation of this project available at the time of release of Android O in this year's fall. We expect to hear more about this project next week at Google I/O.

Source: Android Developers

Krittin Kalra
Krittin Kalra is a 20 year old Android freak. Striving for passions, chasing down his dreams and living a life without regrets is his sole mantra. A bit moody, he also does custom ROM reviews for AndroGuider. Currently pursuing his B.Tech, he aspires to follow his heart.
Editorial - How Google's Project Treble Will (Probably) End The Misery Of Slow Android Updates Editorial - How Google's Project Treble Will (Probably) End The Misery Of Slow Android Updates Reviewed by Krittin Kalra on 5/13/2017 11:48:00 PM
Subscribe To Us

Get All The Latest Updates Delivered Straight To Your Inbox For Free!





Powered by Blogger.