What is… an Android Bundle?

Amid a recent flurry of emails from Google regarding my French Revolution app, concerning Families Policies and icon design, was one advising the use of an Android Bundle, to “reduce your app size and boost installs”.

What is... an Android Bundle?

I wondered, what is an Android Bundle? Time for the latest in our What is… series.

The email from Google Play informed me that it is “Android’s official publishing format” and will help deliver a smaller, more efficient app to end users. It also mentioned “next-generation delivery features”.


Over 100,000 app bundles are already in production. On average, apps that have switched to the app bundle see size savings of 20%*. French Revolution – Day by Day could benefit from this significant size savings as well with minimal engineering effort.

Size savings and streamlined releases are just the beginning. By adding dynamic feature modules to your app bundle, you can choose how and to whom you deliver different features to further optimise app size.

I headed over to Medium and developer.android.com to find out more…


APK

By default, you deliver an apk file to Google Play for users to download to their devices, as the end result of building an app yourself for distribution on the store. If you want to use the Android Bundle form, instead, you have to make a switch.

The alternative approach is available in Android Studio 3.2 or later, Unity 2018.3 & 2017.4.17, and Cocos Creator 2.0.9 or later.

Google says you don’t need to change your code to start benefiting from a smaller app.

“Build one artifact that includes all of your app’s compiled code, resources, and native libraries for your app. You no longer need to build, sign, upload, and manage version codes for multiple APKs.”

Dynamic delivery

Achieving this is Dynamic Delivery, a Google feature that uses your Android App Bundle to build and serve APKs that are optimised for specific device configurations.

“This means your users enjoy a smaller app download without the unused code and resources needed for other devices.”

You can also track the size of your app in a new App Size report in the Google Play Console, which sounds interesting.

Feature delivery

Slightly esoterically, you can also customise and control what features are delivered to a device, as and when they may be needed instead of at install time.

“This means that adding features no longer has to result in adding to your app’s size at install time. Use conditional delivery to deliver features to countries, device types, or devices running a minimum SDK version. Use on-demand delivery to deliver features on demand, which can be installed and uninstalled as needed.”

Modular

In terms of modular app development, Google says using Android App Bundle enables you to design, build, debug and test an app’s features as independent modules, which can be added to the main app when ready.

“You’ll see fewer merge conflicts and disruptions because you no longer have to have an entire engineering team working on the same monolithic app with complex and bloated code.”

Build times

Inevitably, given the above, Google also says it will result in quicker build times, which means more time for coding…

“Build systems, such as the Android Studio build system using Gradle, are optimised for modular apps so they are significantly faster to build than large, monolithic apps.”

Instant experiences

Finally, and this will be a key incentive for Google, the Android App Bundle supports the us of “Instant” app access, such as via search results that may list an app. You can also instant-enable specific dynamic feature modules, if you wish, “to give users a frictionless way to experience your app”.

“Users can launch your experience from the Try Now button on Google Play and web links without installation.”

Examples

As examples of app-size reductions, Google quotes the Dropbox app benefiting from a 33% size reduction due to Android Bundle. Duolingo apparently achieved a 42% reduction and Netflix a 57% reduction.

Finally, the company has also highlighted a link to this Android Bundle PlayAcademy e-learning course – Decrease app size and deliver features on demand

 


Comments

4 comments

  1. In terms of decreasing app size, this approach is actually what is needed. However I think its really key with modular development as this makes it much harder to create/upload apps. This is actually the weakest point in individual development for Android against Apple.

    • Thanks Kostas, and I’d agree there is often a balance with introducing simplicity in one part of the process at the cost of complexity at another. I’m surprised, though, you feel Apple offers simpler development routes.

      • Android and Apple development routes are both equally horrible. Best bet with Android is to use the Microsoft Visual Studio with Xamarin. Still not perfect but a whole lot better. As for Apple – it’s so hard to get stuff into their app store nowadays, is it really worth the effort ?

        • Interesting, thanks Mike. I wasn’t aware of Xamarin – it sounds similar to Flutter – a quicker way to build cross-platform apps with “native interfaces” (for ARM devices). As you say, a less horrible approach is rather welcome.

Leave a Reply

Your email address will not be published. Required fields are marked *

*