Google today dropped a blog post detailing its progress on improving the Android ecosystem's update speed. The company has been hard at work for the past few years modularizing Android, with the hope that making Android easier to update would result in device manufacturers pushing out updates faster. Google's efforts have been paying off, with the company announcing Android 10 has had the fastest rollout ever.
The last few versions of Android have each brought a major improvement to Android's update system. Android 8 introduced Project Treble, which separated the OS from the hardware support, enabling easier porting of Android across devices. In Android 9 Pie, Google completed its work on Treble and started publishing Generic System Images (GSIs): drop-in versions of Android that work on any Project Treble-compatible device. Android 10 introduced Project Mainline and the new APEX file type designed for updatable lower-level system components, delivered through the Play Store.
Google's stats show that all this work is actually improving the ecosystem. "Thanks to these efforts," Google writes, "the adoption of Android 10 has been faster than any previous versions of Android. Android 10 was running on 100 million devices 5 months post launch—28% faster than Android Pie."
At the end of the chart, Android 10 hits 400 million users at the 300-day mark (Android 10 is 310 days old), which sounds like a pretty big number. As of last year though, Google said there were 2.5 billion active Android devices out there, so 400 million users works out to 16 percent of the active Android install base. It's great that adoption is increasing from Oreo to Pie to Android 10, but there's still a lot of room for improvement.
The next up: the Linux kernel
The next great frontier for Android updates is a more portable Linux kernel, instead of the heavily forked, device-specific Linux kernel that every Android device uniquely spins up today. We last wrote about this project back in late 2019 when the plans to build a "Generic Kernel Image (GKI)" for Android were the first discussed. The goal was a kind of "Project Treble for the Linux kernel." Instead of the fork-happy process that exists today, a portable Generic Kernel Image could be used, and proprietary drivers and code could be loaded as kernel modules, with a stable interface between the two codebases. This was also talked about in conjunction with shipping the mainline Linux kernel instead of an Android-specific Linux, meaning you could run Android on the same kernel you'd get in a Linux desktop.