Android Developers Blog
The latest Android and Google Play news for app and game developers.
🔍
Platform Android Studio Google Play Jetpack Kotlin Docs News

08 三月 2022

Freeing up 60% of storage for apps


Link copied to clipboard

Posted by Lidia Gaymond and Vicki Amin, Product Managers at Google Play

One of the main reasons users uninstall apps is to free up space. To prevent unnecessary uninstalls and help users get more out of their devices, we started working on a new feature that would enable app archiving.

Archiving is a new functionality that will allow users to reclaim ~60% of app storage temporarily by removing parts of the app rather than uninstalling it completely. An archived app will remain on the device and can easily be restored to the latest available compatible version, whilst preserving the user data.

As we are taking steps toward making archiving available to all developers, we will start generating a new type of APK - archived APKs - for developers using the App Bundle to publish their app. Archived APKs are very small APKs that preserve user data until the app is restored. While we will start creating archived APKs now, they won’t be functional until the archiving functionality is launched to consumers later in the year.

Once launched, archiving will deliver great benefits to both users and developers. Instead of uninstalling an app, users would be able to “archive” it – free up space temporarily and be able to re-activate the app quickly and easily. Developers can benefit from fewer uninstalls and substantially lower friction to pick back up with their favourite apps.

As before, all APKs generated will be available to download and inspect through Generated APKs API or in Play Console under App Bundle Explorer. Since the functionality is open source, developers will be able to inspect the code, and other app stores can benefit from it too.

If you are using AGP 7.2 or newer and want to opt-out of the generation of archived APKs, you can modify the build.gradle file of the project:

android {
    bundle {
        storeArchive {
            enable = false
        }
    }
}

Alternatively, if you are not using Gradle to build your apps, you can opt-out with a new option in the BundleConfig on bundletool versions 1.8.2 and up:

{
  "optimizations": {
    "storeArchive": {
      "enabled": false
    }
  }
}
For older Bundletool and AGP versions you can opt-out by including an opt-out file in your resources: res/xml/com_android_vending_archive_opt_out.xml.

<?xml version="1.0" encoding="utf-8"?>

<optOut />


Keep an eye out for more information about app archiving on the Android Developers blog.