Ever wondered how Apps work in various phones when there are hundreds of different specifications like different processors, architecture, screen density, etc. To meet these problems developers needed to create different APKs for different devices. It was later simplified by creating a Universal APK file which had all compiled code and resources required for every architecture, processor, language, etc.
What is .aab (Android App Bundle)
Android App Bundle is a publishing format that includes all the resources and compiled codes of the App. So basically as the name suggests, it’s a bundle with a base APK and many split APKs. Google Play will have split APK files provided by developers of the app and Google Play will dynamically deliver the best APK suitable for your device. For example, if your phone has Y DPI, Arm Z type processor specifications it will provide you that resources in your APK file and won’t add additional resources which will save storage space in your phone.
AAB(Android App Bundle) vs APK
AAB is a publishing format given by developers to App Stores, which will be used by App Stores to give users the best-suited APK for their device. AAB will reduce a lot of work for developers as they don’t need to make multiple APKs and upload them to App Stores based on the user’s region and device specifications.
AAB is not entirely different from APK, but it is rather a bundle of base APK and multiple split APK for different device specifications. On the other hand, APK is a packaging format that will be installed on the user’s device.
Benefits of Android App Bundle
Manage releases more efficiently: Developers need to build one artifact that will include all compiled code, resources, and native libraries for their app. The time and effort needed to build, sign, upload, and manage version codes for multiple APKs will be saved.
Advantage of a smaller app: The Android App Bundle will be used by Google Play to dynamically allot the APK that is best for your device configuration. This will reduce the size of your APK as the code and resources for other devices won’t be allotted in your APK file. The Apps in the below image are examples of size reduction by utilizing the Android App Bundle.
Customized feature delivery: Developers would be able to give customized features of devices they choose. They can use on-demand delivery to deliver features on-demand, which can be uninstalled and installed as per their wish. Developers can also use conditional delivery to deliver features to different countries, device types, or devices running on a low SDK version.
Faster App engineering: Modular app development is supported in the Android App Bundle, so developers can design, build, debug and test their app’s features as independent modules that can be added to their main app when completed. Companies would no longer need to have an entire engineering team on the same app as there would be fewer merge conflicts and disruptions.
Faster build times: Build systems are optimized for modular apps so they are significantly faster to build than large, monolithic apps. Developers spend less time sitting around waiting and more time designing, coding, and testing their apps.
Offer trial experience at Google Play: Developers will be able to give you an easy way to experience the app without installing them. You would be able to experience the app from the Try Now button on Google Play and web links without installation.
Also Read: Best Open Source Apps For Android
Disadvantages of AAB
Handing over the signing key to app stores: For publishing APKs, app stores will need the signing key. AAB will be uploaded to Google Play and then it will generate a dynamic APK for your devices on the basis of your device’s specifications. Before AAB, developers used the key to sign APKs. Google will use the App Bundle and give signed APKs ready for installation.
However, Google ensured the developers that their signing keys will be protected in the same infrastructure where they keep their keys. Later Google came up with Code Transparency that will allow developers to create a second private key for their use, which will be only accessible by them. The risk of theft of signing keys increases if developers want their app to be published by other app stores as the app store might not be able to protect their signing key.
Difficulty in Sideloading: AAB will support sideloading but it won’t be as easy as sideloading APK. Currently, AAB sideloading is not supported in the APK installer which indicates AAB installing won’t be possible on-device. You can try using third-party installers apps to install an AAB package on the device. Google has provided an open-source software called bundletool. It can be used to make APKs of your choice from the app bundle.
Is an Android app bundle required?
According to the official site of Android Developers, after August 2021, all new apps and games will be required to publish with the Android App Bundle format. New apps and games must use Play Asset Delivery or Play Feature Delivery to deliver assets or features that exceed a download size of 150MB.
What is the difference between App bundle and APK?
App Bundles are a publishing format, whereas APK (Android application package) is the packaging format that will finally be installed on the device.