Many Android power-users out there are familiar with the operating system’s ‘cache partition’ and the ‘clear cache’ option in recovery. However, Android is growing up and shedding some relics of the past, including the cache partition.
For the unfamiliar, the cache partition was a crucial part of software updates for most of Android’s life. When Android downloads an update, it saves the update to the cache partition. Then users restart the device, applying the update to the system partition.
Partitions are divisions in storage on a device to help the operating system manage information separately. In the case of Android, the system partition holds the current OS and the cache partition holds the update information.
While the system isn’t bad, it does have drawbacks.
Problems with a cache partition
For one, updates take much longer this way. The update information must be moved to the system partition and applied to the OS. Then the OS must ‘optimize’ after the reboot to clean up the installation. That’s where that annoying “Android is optimizing” screen comes from.
Furthermore, if there is an error with the update, this method can really break things. There is no system back-up when updates are done this way, meaning changes are final. Fixing things that break requires time, the Android development tools and some familiarity with Window’s command line.
Suffice to say, most people don’t have the time or patience to learn Android’s development tools and how to use the command line.
Thankfully, there’s a better way — and that’s why Google has relegated the cache partition to the past.
With Android 7.0 Nougat, Google introduced ‘Seamless Updates.’ The feature was borrowed from Chrome OS and touted as a faster, easier way to update your phone.
And for some people, it was.
Seamless Updates does away with the cache partition in favour of two system partitions. Also known as A/B updates, essentially the phone has two systems. One partition may be the active partition — the one the device booted from. The other, dormant partition sits idly by in the background.
When you download an update, it automatically gets applied to the dormant partition. When everything is ready, the system prompts users to reboot the device. During the reboot, the partitions swap — the dormant, update system becomes the active.
This system solves both drawbacks of the cache partition. It’s a lot faster for one. On my Pixel 2 XL, it boots as quickly as normal. My phone is only out of commission for a minute or two, instead of five or more.
It also creates a built-in back-up system. The system can detect an error during the reboot and swap back to the other partition. After restarting, the device can alert the download server and reapply the update. In other words, users should never have to worry about an update breaking their phone.
This system is also why new phones with the feature no longer have the clear cache option in recovery.
Not a perfect system
Unfortunately Seamless Updates isn’t a perfect feature. One small issue with having two positions is that the system takes up more storage space. However, with devices shipping with more storage, this isn’t a huge issue.
Old devices have the biggest problem with Seamless Updates. Getting rid of the cache partition and setting up a second system partition would require users to repartition the entire phone. While it isn’t impossible to do, it would require hooking the device up to a computer. Furthermore, there are a lot of potential issues that could come from repartitioning. Ultimately old phones are better off sticking with the cache partition.
Finally, Seamless Updates aren’t supported by many devices yet. Google’s Pixel line supports the feature, as well as the Essential Phone. The OnePlus 6 is the first OnePlus phone to support Seamless Updates too.
A few HTC, Motorola and Sony phones also support Seamless Updates. XDA Developers has a full list of support devices here.
While many new devices will support the system, one big name is missing. Samsung doesn’t support Seamless Updates yet.
Devices that don’t support the feature will continue to use the cache partition method, regardless of the Android version they run on.
Source: How-To Geek