One of the biggest complaints of using an Android device is not getting the updates on time. Some older Android users are not even getting the security patches.
Now, let us have a look at the table below.
As you can see Nougat holds around 28.2% of Android users while Marshmallow has 21.3% users. If you sum it up, you can see that over half of the Android users are still running over a couple of years old software. To give you a perspective how pathetic this is, you can see in the pie chart below that half of the iOS users are already on iOS 12, which is their latest version.
These different versions of Android stacking up a significant number of users is known as fragmentation. This is a core problem of Android. Though you might say that someone may just be fine with their old device, but the real issue is security. Even a single vulnerability in any of the older version may affect millions. This is because Android accounts for around 76% of all smartphone users (April 2018) around the world.
To solve this fragmentation problem Google has come up with Project Treble. This might not eradicate the problem completely but this will definitely improve upon the present condition.
Before knowing how project Treble helps let us first clear some of the basics.
What is a Kernel?
It is a part of Operating system (in our case Android) which handles Input/Output from the application layer (applications such as camera, music). It actually helps the application software to communicate with hardware. They need to be compiled according to hardware specifics which is carried out by your device manufacturer.
What is HAL?
HAL or the Hardware Abstraction layer is actually a userspace C/C++ library layer. It helps the Android Operating System to solve one of its’ core problems. The problem is the application layer cannot directly communicate with the Kernel. It needs the HAL to communicate with the Kernel. HALs need to be rebuilt with each iteration of Android, which is generally done by the SoC manufacturers.
Why Android Updates are slow?
Whenever Google releases an update, your device manufacturer had to wait for the rebuilding of the HAL by the hardware manufacturers of your phone. After receiving the HAL, they need to recompile the Kernel according to the hardware specifics of your phone. To add to that if they are using a custom skin, then they need to completely rework the Stock Android and tailor it specifically for all their phone models. The time taken on this step will vary according to the customizations to be done for the UI. For example, Moto will have to work less because their skin is close to Stock Android while Samsung will have to do a heavy task.
All these take up a huge amount of time and hence the Android updates are slow.
Beside the technical aspects, there is one more aspect which is the business aspect. Providing software updates takes up huge time and money. It is basically for the benefits of the user. All these goes against the very business models of many companies. This results in even slower delivery of the software updates. Moreover, even if a big company like Samsung provides no updates, then also it doesn’t make a huge difference because they are already selling a ton of handsets every year.
How does Project Treble help?
By now, you may have understood that there is no separation between the low-level hardware code and the higher level OS code which Google maintains. The HALs, Kernel and the skin on top of it must be reworked entirely to provide the update.
Project Treble formalizes the division between hardware subsystems and their clients on the software side. To formalize this they have introduced an interface between HAL and the application layers. These interfaces are known as HIDLs or HAL interface definition language. There are 60 such formal interfaces.
These HIDLs ensure that the HALs will not have to be rebuilt by the SoC manufacturers and it can stay in a vendor partition for the entire life of the device.
How much difference will Project Treble make?
This is too early to answer this question, but according to Google Project Treble will save around 3 months of Android update process. This again might vary for different manufacturers.
To give you a perspective it took around 7 months to deliver the Android Oreo update in their flagships from the time of the release of Oreo by Google. Hence Project Treble will let them deliver the update around 4 months after the release. But this will still be slower as compared to iOS.
Will my device support Project Treble?
Now here comes the million dollar question. Though as you might have expected the answer is not so simple. But you can check the following points to get your answer.
- If your phone is too old, and will not even get the Oreo update, then there is no way you will have Treble support on your phone. Sorry.
- Even if your device gets updated to Oreo, then also there is no guarantee that it will support Project Treble. It depends on your manufacturer whether to provide Treble support or not.
- If you purchase a new phone that comes with Android Oreo or Pie out of the box then it will definitely support Project Treble.
Project Treble is essentially shaping up the Android update scenario for better. This will translate to better security on Android phones too. Still, Android will be far from iOS in terms of updates. But this can be regarded as the first major step to faster Android updates.
What are your thoughts? Let me know in the comments below.