Google hopes several fresh feature additions to Android App Bundles -- including a new API -- will convince more developers to adopt the modular Platform. The goal behind Android App Bundles is to reduce app size and simplify the process of developing, testing, and releasing apps. Google calls the initial uptake of Android App Bundles a success, claiming more than 60,000 production apps have adapted the model. The result? Significant drops in app size and reductions in release times.
Google is always tinkering, however, which is why it has new functionality on deck for Android App Bundles. Here's the skinny.
First, Android App Bundles includes a new Additional Langauges Install API. In short, this lets developers add in-app language pickers to their application. In general, Google Play apps download the language resources that match the system language. A user whose device is set to German, will receive only the German language buts needed for the app. Google understands that sometimes people switch their system langauge, which can make interacting with non-matching apps difficult.
To counter this experience, and to assist developers who decouple their app's display language from the system language, the Additional Languages API adds the in-app language switcher. At the same time, the Play Core library (v1.4.0) boosts the number of available languages. With the API enabled, apps can request whatever language resources are needed whenever the system language changes. The process is similar to when requesting an on-demand module. It does this immediately to help the end user.
Beyond the new API, Google says Android App Bundles includes a streamlined publishing process for instant-enabled apps. This change goes hand-in-hand with Android Studio 3.3, which showed developers how to build app bundles that include the regular and Google Play Instant versions of their app. The previous process required developers to build two separate app bundles for Google Play. Now this restriction is gone. Google says developers can upload a single app bundle that contains the full app and modules enabled for instant apps. Moreover, the installed / instant versions of the app won't need different version codes.
Developers have access to a revamped sign-up flow for new apps, meant to make it simpler for them to initialize a key for signing the app. Google says this method is more secure than the previous process. Developers can choose to upload their existing key without needing to first upload a self-signed artifact. Further, devs can opt to start a key generated by Google Play. You can learn more about the new flow here.
Last, the ability to permanently uninstall dynamic feature modules should help developers further reduce the size of their installed app. For instance, developers can uninstall a large sign-up module or other onboarding content once the user fills it out. Google says this is a behavior change that will leave modules permanently deleted even if the app itself is updated.
As always, Google wants to see smaller apps that run smoother and quicker. These tools should help in that pursuit.