As we approach the stable Android 12 release, Google is making some basic changes to the delivery and delivery of apps on Android devices. Starting August 2021, all new apps on the Play Store will be published in Android App Bundle (.aab) format instead of the existing APK format. So what are the main differences between APK and Android App Bundle (AAB)? Can AAB be sideloaded like an APK? To answer all your questions, we have created this detailed guide on APKs and AABs. So don’t waste your time and dive right away.
- 1 APK and AAB (Android App Bundle): Comprehensive Comparison
APK and AAB (Android App Bundle): Comprehensive Comparison
Here, both AAB format and APK format are explained in amateur language so that anyone can easily understand the concept. We also explained in detail how to install the AAB file, how to extract the APK from AAB, and so on. Expand the table below to quickly navigate to the relevant section.
APK and AAB: Understand the basics
First, in order to correctly understand the difference between APK and Android app bundle, you need to understand some basics.
APK has been a popular distribution app package on Android since its inception. The APK mainly consists of a large amount of resources such as app code, images and sounds, and an app signature key generated by the developer. Keep in mind that Android devices have different form factors and specifications.For example, the device Screen densities of varying degrees (320dpi, 480dpi, etc.), processor type (ARM, ARM64, x86), etc. Also, based on the user’s region, the app requires language packs (en, fr, ger, etc.).
In an ideal situation, the developer Build and upload multiple APKs In the Play Store based on user’s region, processor type, screen density.The user is on the Play Store[インストール]Tap the button to install the right and best APK on your device. However, all of this puts a huge amount of work on the developer’s hands. In addition to developing apps, you need to manage multiple APKs to support a large number of devices.
To avoid this complicated and time-consuming task, most developers Build a universal APK It comes with all the resources (language packs, code, etc.), even if that particular device requires few resources. This creates a bulky APK that increases the app size, increases installation time, and consumes bandwidth.
Google wants to solve this problem and bear most of the burden on developers using the Android App Bundle (AAB). This can reduce app size, installation time, and bandwidth consumption. The company introduced AAB at Google I / O 2018, but almost two years later, Google requires the Play Store to submit new apps in AAB format.
Compared to APK, AAB format is not a completely new distribution package. actually, AAB is a container that hosts a base APK and multiple split APKs.. Basically, AAB is a public format that developers send to the Play Store, and APK is a package format for Android apps that you install on your device.
So what really changes here? Starting August 2021, developers no longer have to process and manage the entire APK for different devices. With AAB, developers pass everything to Google. App code, assets, tons of resources, all language packs, and most importantly, your app’s private key.Now Google can Generates an optimized APK based on the device configuration and provides it to the user.. You can create a much smaller AAB bundle. It is compact in size, easy to install, and consumes less data on low-end devices. This is the main suggestion for AAB and APK, but there is still more to unpack.
Sharing your private signature key with Google
Looking at what AAB brings to the table, it seems like a good alternative to APKs. The AAB format reduces the size of your app, eliminating the need for developers to create multiple APKs.But many developers Concerns about sharing private signature keys with Google..
As mentioned above, the signing key is the most important information to verify the integrity of the APK. Even if you sideload the APK from a third-party source, the Google Play Store will check the signing key to make sure it hasn’t been tampered with.
When using AAB, Google requires developers to share a private signing key so that Google can generate an app bundle and sign AAB with the same private key. When the user installs the app or updates to a newer version, the Play service will match the signing key and the installation will be done without any key mismatch or signing failure issues.That said, developers say it Possibility to open the door to code injection.. Google is all “The signing key is stored in the same infrastructure that Google uses to store its own key.So rest assured, all your secret signature keys are protected by iron walls.
In addition, to alleviate developer concerns, Google has announced code transparency that developers can do. Generate another private key It will only be accessible to them. Developers can create additional signatures from individual private keys that can be used to verify the integrity of your app. However, this method has its limitations. Code transparency deals only with code, not assets, resources, or manifests. It’s also an optional feature that can take many developers out of the loop.
Is AAB going to make things harder for third-party app stores?
Another problem that arises from sharing your private key with Google can be difficult for third-party app stores. For example, if you installed an app from the Play Store but want to update to the latest version from another Play Store alternative app (such as the Amazon AppStore or Aptoide Store). Installation may fail This is due to a signature mismatch.
This is because Google manages the private signing key, so you can’t use the same key when uploading your app to a third-party Android app store. You need to use a different private key, This will result in a private key mismatch error. Is this a problem for Android app support on Windows 11? We have to wait and find.
Other than that, the presumption that AAB prevents developers from uploading APKs to third-party app stores seems incorrect.Google is already An open source tool called bundletool This allows developers to create APKs from AAB bundles. The only problem at this time is that sharing the private signing key affects Android power users.
Can AAB be sideloaded like an APK?
From what we know, it seems possible to sideload AAB on Android devices, but it is Not as convenient as sideloading an APK.. The Android package installer does not currently support the AAB package format. That is, you cannot install AAB natively on your device. However, you can use a third-party installer app to install the AAB package on your device.
For example, you can now use the APKMirror installer (free, in-app purchase offered) to install the APKM bundle (base APK + split APK) in the installer app. Keep an eye on the upcoming detailed guide on how to install the Android app bundle on your phone.
Apart from that, you will not be able to adb sideload How to install AAB. You must use the open source bundletool to get the correct APK compatible with your device. As AAB becomes more mainstream, new and convenient methods of sideloading may emerge. Note that just sideloading the Base APK will crash on your device.
APK and AAB: Pros and Cons
After reviewing all the points, you will find that AAB does not make a big difference in terms of the user experience for most users.Yes it Reduce the size of the app, This is useful for most users. For example, Airbnb reduced the size of the app by 22% after switching from APK to AAB, while Netflix reduced the size of the app by 57%. This makes a considerable difference in the size of the app. Apart from that, the abandoned instant app feature brings new life to AAB on Android devices.
However, for power users who want to sideload AAB, it is a little tricky and inconvenient. You may need to use bundletool to extract the APK of your device or use a third party installer.One thing to note is that AAB Leave the OBB (Opaque Binary Blob) Download large assets and resources. Instead, use Play Asset Delivery or Play Feature Delivery to download heavy resources with a download size of 150MB or more. We need to see how this affects sideloading games such as Battlegrounds Mobile India, PUBG Mobile and FAU-G.
Developers most affected by this change do not need to refactor their code. This is great. AAB also brings modularity in two. This means you can modify your code snippet to merge with the core base without having to face many merge conflicts. One of the great advantages of AAB is Customized options for developers.. You can select the target API level or supported device types. Developers can also determine all the features offered on smartphones running on a particular device type or minimum SDK version.
Regarding the disadvantages, At the heart of the problem is sharing the private key, This is currently managed by Google. Incompatibilities with third-party app stores can also be a major issue, requiring developers to spend an additional mile to publish and manage APKs on other app stores (with the current Play Store). Similarly).
APK vs AAB (Android App Bundle): What do you think?
For me, the biggest problem with this change is excessive reliance on Google. With this change, Mountain View giants have confirmed that the Play Store remains the de facto app store on Android devices. From app hosting to managing private keys, Google now controls all aspects of app publishing and distribution on Android. Developers may be happy with the new changes because they no longer have to manage multiple APKs, but how will it work for users in the long run? Still do not know. Will it make a difference if developers take control over Google? We have to wait and see. Anyway, it’s all from us. However, in the comments section below, please tell us what you think of this APK and AAB discussion.