Android apps and games have steadily gotten larger in size. Updates can also be pretty large. This has led to many users opting not to update their apps, over the fear of going over their data cap or not having enough room on their device. Google has already taken steps to make apps and updates smaller, with delta updates. What a “delta” update does, is it only updates the files in the APK that were changed. So if it’s a small bug fixing update, where just a few things were changed, there’s no need in updating the entire APK, wasting all of that data. Google has said that about 98% of app updates are delta updates to the APK and have saved quite a bit of data for users.
Now this new algorithm they are announcing today, is taking things a bit further. The algorithm is named “bsdiff”, and it makes these updates and even app downloads much smaller, taking up even less of your data plan. Google says that bsdiff can reduce patches by “up to 50% or more”. Which can be a pretty big deal. The example they cite in their blog post is about Google Chrome. Going from M46 to M47, the patch was 22.8MB, but with bsdiff, the patch dropped down to just 12.9MB. That’s a little less than half the size. With a minor update on M47, it goes from 15.3MB all the way down to 3.6MB in size. A considerable change.
Google Notes that APK Expansion Files are now using the new bsdiff algorithm here. With the additional large files you’ll find in games, typically, downloads are reduced by 12% on installations and up to 65% with updates. Also, on the Google Play Store, apps will be listing the download size. As opposed to the APK size. If you have the app installed already, it will show you the update size, so you’ll be able to tell how much data you’ll need to get this update downloaded, or to download this app. Especially important for those on capped data plans. These features are rolling out now, and should be available to everything within the next few days.