App Bundles
The Amazon Appstore supports the Android App Bundle file format for app submission. The Appstore receives your app bundle and generates APKs. Amazon Appstore uses bundletool
(version 1.11) to convert the app bundle files into optimized APKs that can be downloaded and installed across client devices. The size of the APK file that a customer installs is optimized for their device configuration.
You can submit your Android App Bundle files to the Appstore, without the need to create separate APKs. However, app bundle files must meet Amazon Appstore's submission requirements. For detailed explanations of app requirements, see Understanding Amazon Appstore Submission and Amazon Appstore Presubmission Checklist.
Create app bundles
Before you can submit an app bundle on the Amazon Appstore, you must create an Android App Bundle (AAB) file. For information about configuring app bundle files, see About Android App Bundles in the Android developer documentation.
Test app bundles
Before submitting your app, the Amazon Appstore recommends testing your bundle locally by using bundletool
. When you submit an app bundle, Amazon uses a customized bundletool
to generate optimized APKs from the bundle. The size of the generated APKs are optimized for each user's specific device. To test the APKs that Amazon's customized bundletool
generates, you can download and use this bundletool
JAR:
You can use this JAR to test the generated APKs on your local system. To generate optimized APKs, use the build-apks
command with mode set to persistent, as shown in the following example.
java -jar bundletool.jar build-apks --bundle=path-to-your-app-bundle.aab --output=generated-apks.apks --mode=persistent
In your preferred shell, if you choose, you can set java -jar bundletool.jar
to have a command line alias of bundletool
. Use the instructions specific to your preferred shell to set up an alias. With the alias set up, the command would look as follows.
bundletool build-apks --bundle=path-to-your-app-bundle.aab --output=generated-apks.apks --mode=persistent
For more details on how to generate an APK from your app bundle with bundletool
, see the bundletool documentation . After testing your bundle locally, the Appstore recommends you use Live App Testing (LAT) with your app bundle before submitting your app to be published live.
Dynamic modules are merged with the optimized APKs and delivered at install time. You can use LAT to test your apps and understand how the modules are merged.
Submit app bundles
To submit an app bundle in the Developer Console:
- From the Developer Console dashboard, select App List.
- Select your app and go to the Upload Your App File screen.
- In the App File(s) section, you can upload the app bundle file. Click the box or drag your AAB file to the box to start the upload.
You can adjust the devices supported by your bundle on the Target Your App screen. For details, see Supported devices. For more information on the app submission process, see Submitting Apps to the Amazon Appstore.
App bundle FAQ
This section contains frequently asked questions (FAQ) related to app bundles.
App submission
- Q: Are Android App Bundles mandatory for Amazon Appstore?
- App bundles are optional. You can continue submitting apps using the existing APK format.
- Q: Do app bundles change the way I submit apps to the Appstore?
- No, app bundles do not change the app submission process for either app format (AAB or APK).
- Q: Do I need to resubmit my app if it was published using APKs?
- No, you do not need to resubmit your published app if it was previously submitted in the APK format. You can continue publishing new apps and updating existing apps using the APK format. You have the choice to use app bundles for future submissions by uploading a file with the Android App Bundle format (.aab).
App bundle features
- Q: Will my apps get all available Android App Bundle benefits?
- At this time, the Appstore doesn't support non–install-time feature or asset delivery, or instant apps.
- Q: What happens if my app bundle contains dynamic delivery modules?
- Dynamic delivery modules are merged in the optimized APK regardless of if you use the "fusing" attribute in your manifest.
- Q: What happens if my app bundle contains asset packs?
- The Appstore currently supports only install-time asset delivery. Previously, the Appstore allowed you to upload app bundle files to the Developer Console with no restriction on the delivery type. The Appstore no longer accepts app bundle files that contain asset packs that aren't install-time.
If your app has asset packs that aren't install-time, convert them into install-time assets. To convert non–install-time asset packs to install-time, modify the delivery type of the asset pack in your app's build.gradle file. Update any affected method calls to access the assets. For more details, see Play Asset Delivery in the Android developer documentation. After you make these updates, test your app to make sure that all assets load correctly and are accessible throughout the lifetime of the app. - Q: What happens if my app bundle contains conditional feature delivery modules?
- Conditional feature delivery modules are merged in the optimized APK regardless of if you use the "fusing" attribute in your manifest.
Amazon services
- Q: Can I use the App Submission API with app bundles?
- No, the App Submission API doesn't support app bundles at this time.
- Q: Can I use Live App Testing (LAT) with app bundles?
- Yes, LAT supports app bundles. The Appstore recommends using LAT to test your app bundle before submitting your app to be published live.
Last updated: Mar 28, 2024