Saturday, November 9, 2024

Sideloading Android apps requires extra step after APK change by Google Play

Must read

In recent years, Google has been working to make Android apps smaller. As a result of that change, the process of installing (sideloading) Android APKs outside the Play Store might have an additional step.

Google announced the Android App Bundle (AAB) at I/O 2018 and made it the default format for new applications in 2021. Developers build their apps as these bundles, which contain the various files for diverse screen sizes, languages, CPU architectures, and versions of Android. Rather than downloading the full bundles, Google Play only downloads the portions it needs for apps to run at their best on a particular device, conserving storage space. Most importantly, Google Play handles all of this automatically once the AAB has been uploaded. 

While most apps were delivered to devices in an optimized way, Google Play was also capable of creating full-size all-inclusive APKs from AAB files. These files were convenient for sharing apps/updates with others, both locally and through services like APKMirror.

According to Artem Russakovskii of APKMirror today, “Google stopped generating fat APKs for many apps entirely all of a sudden, and only bundles will be available from now on.”

“Fat APKs” were standard before Android app bundles. Google explained the different as such in 2018:

…you can build and version multiple APKs for each device configuration in a single release. This quickly gets out of hand when you want to optimize for screen sizes, CPU architectures, target both 32-bit and 64-bit, and so on. You can end up building hundreds of APKs for each release. It’s a pain, and most developers don’t do it. Many just put everything in a single, ‘fat’ APK, and users end up with unused, duplicated content on their device.

To users who only install apps from the Play Store, there’s no impact.

However, fat APKs matter when users extract an application (like a new version/update) from their device and upload that file to services like APKMirror. Others can download and simply install fat APKs — using Android’s system Package Installer — without the need for any other tools.

Bundles require other tools like the APKMirror Installer and Split APKs Installer (SAI) apps, or ADB, to install.

In practice, this introduces one extra step to installing apps from those sites. It’s not the biggest pain point in the grand scheme.

Looking at Google’s own apps on APKMirror (which offer bundles as .apkm files), people are still encountering fat APKs. That’s not the case for newer applications, especially from third-party developers.

Extracting APKs to upload to third-party services is not necessarily a consideration the Play Store has to make, though Google is aware of the problem:

Partial installs of sideloaded apps—that is, apps that are not installed using the Google Play Store and are missing one or more required split APKs—fail on all Google-certified devices and devices running Android 10 (API level 29) or higher. When downloading your app through the Google Play Store, Google ensures that all required components of the app are installed.

Android itself is not making any changes to sideloading apps, with developers that distribute outside the Play Store able to keep offering fat APKs.

Kyle Bradshaw contributed to this post

FTC: We use income earning auto affiliate links. More.

Latest article