App Information and APK Files
The General Information tab is now the App Information tab. On the App Information tab, you can upload your APKs, manage device support, and add general information about your app. If you want to add supported languages or testing instructions, see the Other Information tab.
On the App Information tab, you upload your APK files, indicate which devices your APKs support, and more. For more conceptual topics related to APKs, see the following:
- Preparing the APK File for Your App: Provides information about preparing your APK and the code wrapper that Amazon uses with your APK, as well as APK size limitations and other details.
- Device Filtering and Compatibility: Explains how attributes in your manifest determine the devices your APK supports.
(If you're uploading a web app, see App Information and Web App Files instead of this topic.)
- App Information fields
- Public key and PEM file
- Appstore certificate hashes
- Update an existing APK
- Adjust device support for your APK
- Add multiple APKs for the same app
- Troubleshooting common errors
- Related resources
App Information fields
The following table describes the fields on the App Information tab for Android apps.
Upload your Android APK files (drop one file at a time into the box). If didn't use Android Studio to build your signed APK, you might need to zipalign your file. When you add an APK file, you can see its details by clicking the information icon . These details include the version code, version name, file size, package name, minimum SDK version, features, libraries, permissions, localizations, supported screens, compatible screens, OpenGL details, and native platforms. For example:These details determine what devices are supported by your APK (filtering is explained in Device Filtering and Compatibility).
Tip: The package name in your APK must be unique, and it shouldn't include
After you upload an APK, the APK receives an alias named after the API level (for example, "apilevel22"). You can rename the alias as desired. The custom alias is used internally and not be seen by customers. See Preparing the APK File for Your App and Update a Published App for more details related to APK files.
|Allow Amazon to Apply DRM?||
DRM (digital rights management) protects your app from unauthorized use. Without DRM, your app can be used without restrictions by any user.
Note: If your app uses the Appstore SDK, you won't see this option. You can add DRM to your app by using the DRM API, which is part of the Appstore SDK. For more information, see DRM Overview.
If your app isn't using the Appstore SDK, Amazon can automatically add DRM functionality to your app. Select Yes to allow Amazon to add DRM to your app. Select No if you do not want Amazon to add DRM to your app.
If you have multiple APKs, your selected DRM setting applies to all of your app's APKs. If you have previously uploaded APKs and are adding a new APK with different DRM settings, you must replace the previous APKs if you want them to receive the updated DRM settings. Otherwise, your previous APKs retain the same DRM settings as before. For more information about automatically-applied Amazon DRM, see About DRM.
A title for your app, used only in the Developer Console. You define the title users see in the Appstore and on devices on the Description tab, in the Display title field.
App Stock Keeping Unit string. The SKU is a string unique (which you define based on your choosing) for your app. For example:
|App Submission API keys||
After you save your app, you will see App Submission API keys. These keys allow you to manage your app information programmatically through the App Submission API.
A category for your app based on your best judgment. Categories are used primarily for setting up the Amazon Appstore browse tree and for grouping together the Similar, Related, and Recommended app suggestions for users. The top-level categories are the same across Fire tablets, Fire TV, and non-Amazon Android devices, though some subcategories might not be available for Fire TV apps. If you don't see an obvious category for your app, choose the closest fit.
This field appears only if you are submitting a new version of an existing app. Describe the changes you've made in this update. On your app's Appstore details page, release notes appear in a "Latest updates" section. On Fire TV devices, users (who have installed the app) see the release notes in the Notifications section in Settings. On Fire tablets, users see the updates in the notifications pull-down menu at the top.
|Customer support contact||
If selected, your default support information (found under Settings > Company Profile in the Developer Console) is used for the Customer support email address, Customer support phone, and Customer support website fields.
|Customer support email address||
An email address where customers can contact you.
|Customer support phone||
A phone number where customers can contact you.
|Customer support website||
The URL for your app’s support website.
Public key and PEM file
In the upper-right area of the tab, there is a link for a Public Key. This public key, which is unique per app, establishes a secure communication channel between the Amazon Appstore and your app. When you generate the public key from the Developer Console, Amazon generates a corresponding private key. These public and private keys form a key pair to sign license responses. Through this key pairing, you ensure that the users who install your app are authorized.
The public key is stored in a PEM file. If your app uses the Appstore SDK or the Appstore SDK plugin for Unity for In-App Purchasing (IAP) or DRM, you must add the PEM file to your project. To configure your app with the public key:
- Click Public Key.
In the Public Key dialog box that appears, click the AppstoreAuthenticationKey.pem link to download the PEM file.
- Copy the AppstoreAuthenticationKey.pem file.
Follow the instructions for your project type.
Android project instructions
- Paste the PEM file into the app/src/main/assets folder of your Android Studio project.
- In the Project view, the assets folder is usually in app/src/main/assets. If your app doesn't have an assets folder, you must create one. Then drag your PEM file into it.
Unity project instructions
- In the Assets folder of your project, create a new folder named StreamingAssets.
- Paste the PEM file in your Assets/StreamingAssets folder.
Appstore certificate hashes
Certificate information, which includes the SHA-1, MD5, and SHA-256 hashes, is available from a link in the upper-right area of the tab. As part of the ingestion process, Amazon removes your developer signature and applies an Amazon signature. This signature is unique to you, does not change, and is the same for all apps in your account. For more details, see Amazon App Signatures.
Update an existing APK
If you're updating an existing APK, see Update a Published App. When you make the update, you have the option of replacing an existing APK and retaining the same Device Support selections, or removing the previous APK and re-selecting your Device Support details.
Adjust device support for your APK
After you upload your APK, the number of supported devices appears in the Uploaded APKs section.
To manage which devices your APK supports, select Edit next to the number of supported devices. In the Device Support overlay, devices with an 'X' next to their name are unsupported. Unsupported devices are determined by the attributes in your manifest and the countries you target in the Availability & Pricing tab.
If you see a device marked unsupported by your APK, find out why by moving your mouse over the help icon next to the device name in the Device Support dialog box, as shown in the following image.
If necessary, you can manually remove support for devices that have known compatibility issues. The supported devices are grouped into three categories:
- Amazon Fire phones and tablets: Shows the Fire phones and tablet support for your app. See the Tablet Device Specifications for more details. By default, device support for your uploaded APK is turned on for all Amazon Fire Phone and Fire tablet devices, and for all non-Amazon Android devices.
- Non-Amazon Android devices: Shows Android devices on which your app could be installed through the Amazon Appstore for Android app. The Amazon Appstore supports non-Amazon devices running Android 5.0 and above. This option provides additional distribution avenues for your app (and is especially helpful if your app is only available in the Amazon Appstore, not on Google Play). Within this non-Amazon Android devices grouping, devices are sorted into three groups: Supported (compatible), Excluded (manually de-selected), and Unsupported (incompatible based on your manifest settings).
To adjust which devices are supported by your app, click Edit device support and update the devices indicated. Toggle device support on (green) or off (gray) as appropriate. Use the tabs at the top of the dialog to move between categories.
For example, if you're uploading a streaming media app designed for Fire TV devices, click Edit device support on the Amazon Fire TV devices row and select the appropriate device support options on the Amazon Fire TV tab:
For additional information about supported devices for your APK, see the following:
- Troubleshooting Android Manifest and Device Filtering
- Device Filtering and Compatibility
- Supported Filters on the Amazon Appstore.
For non-Amazon devices, at the bottom of the Device Support dialog, there's an option for All other Android devices. The Non-Amazon Android devices can be toggled on or off as a whole, or you can manually adjust device support. This setting allows your app to be distributed to any other Android devices, including future compatible Android devices. New devices are added regularly based on device popularity. Through manifest filtering, the Appstore automatically determines the device's compatibility.
If you turn off "All other Android devices," you change your compatibility strategy from using a deny list to using an allow list for non-Amazon devices. In other words, your APK won't be compatible by default on those devices; instead, you'll need to manually select which third-party devices your APK will support.
To add an additional APK for the same app, see the next section, Add Multiple APKs for the Same App.
Add multiple APKs for the same app
When uploading multiple APKs, make sure each APK has the same
package name in the manifest; however, each individual APK should have a unique
versionCode in your Gradle build file.
When you add multiple APKs, because each APK can only be available for a single device, you have to remove support for devices from your first APK that you want to be available for the additional APKs. The following step-by-step instructions and screenshots will clarify this selection process.
To upload multiple APKs:
- If you haven't already uploaded your first APK, upload it by dragging the APK into the APK Files box.
For the first APK you uploaded, next to "Supported Devices," click Edit and remove support for devices that you plan to target with your second APK.
For example, suppose you have two APKs for your Fire TV app — "APK1" and "APK2". With APK1, you want to target all Fire TV devices except Fire TV (3rd Gen). For APK1, click Edit next to "Supported Devices" in the APK File section. In the Device Support dialog box that appears, clear the check box next to "Fire TV (3rd Gen)." This will make Fire TV (3rd Gen) available for APK2 to target. If you don't remove the device support from the first APK, you won't be able to target it with the second APK.
Note that if you're updating an existing APK, when you clear the check box next to some supported devices, you may see a "Reduced device support" warning. This warning lets you know that you're shrinking the number of supported devices for your app. Customers who previously installed your app on those devices (now unsupported by this APK) won't get the update. (You can read more in Warning: Reduced device support.) Since you're uploading multiple APKs, you can disregard this notice. After you upload another APK and target these devices removed from your first APK, the warning will no longer be applicable.
- (Optional) Give your APK a recognizable alias to distinguish it from the next APK you upload.
Drag another APK file into the APK Files box. Optionally, change the alias for the new APK you uploaded to distinguish it from the first APK.
When you drag another APK into the App Information tab, the devices supported by the first APK are unavailable for the second APK — because two APKs can't be installed on the same device. Under the greyed-out devices, you should see the phrase "Targeted by another APK in the current version." ("Targeted" just means that you selected support for the device with your app.) Remember this rule: Multiple APKs cannot be installed on the same device. With the second APK, you can select support for devices not already selected by the first APK.
Continuing with our previous example, suppose you upload "APK2" and want Fire TV (3rd Gen) to support this APK. You already cleared support for this device with the previous APK, so it should now be selectable with this second APK.
With multiple APKs, the Amazon Appstore does not automatically assign the APK based on the API level or
versionCode(unlike with Google Play). You must manually select the supported devices when uploading multiple APKs.
When finished, click Save.
You can add more than two APKs per app. Continue adding as many APKs as desired.
Troubleshooting common errors
This section provides troubleshooting information related to APK submissions on the App Information tab.
Error: Duplicate package name
When uploading an APK, you see the following error:
"Failed to upload APK. The package name of the uploaded APK, com.amazon.android.yourapp, is already in use by an app owned by a different developer. Please contact us for more information.
First, check to make sure that you have not uploaded this APK file on another Amazon developer account as either an app submission or Live App Test. If you haven't uploaded this same APK under another account, submit a support case reporting the issue and noting the package name. To submit a support case, sign in to the Developer Console, click the ? in the upper-right corner, and click Contact Us
Note that when using development environments such as Unity or pre-existing manifest files, it's possible that your app’s package name will have a placeholder value that should be changed prior to submission. The package name of your APK file must be unique to the app you are publishing and is usually in the format of
If you have an association with a developer or publishing company that might have uploaded your app for Live App Testing, contact your development partner to confirm that they have not submitted your app’s APK file on their account. If they have, ask them to end the current Live App Test. Then contact us with the package name to resolve the issue.
Warning: Reduced device support
When adjusting device support for an APK, you see a warning that says the following:
Device support has been reduced from the previous version. Some existing customers will not be able to upgrade. To resolve manifest conflicts, Amazon recommends editing the manifest to retain your current device support.
This message means that, with your newly uploaded APK, you have introduced new attributes in your manifest or build.gradle file that shrink the number of compatible devices. Most commonly, you may have incremented the API level, which reduces the number of devices that can support the update. As such, the Appstore is warning you that some devices may not be able to install this update.
For example, suppose you publish an APK with manifest attributes that require at minimum API level 19, and customers with a device supporting API level 19 (but not support for any level greater) install the app. Later, you update the app with new features or permissions requiring APK level 22 as a minimum. This new update will be incompatible with the previous version of the app the customer (with API level 19) installed. As a result, the customer will not see that an update is available.
Target device not available
When uploading a new APK, you see a message that says a particular device is not supported for your APK. The message might be as follows:
Your APK manifest requires capabilities not present on this device.
android:minSdkVersion = '22'; device requires '15'
To see the reason the device isn't supported, move your mouse over the help icon next to the device name in the Device Support dialog box. See Adjust Device Support for your APK above for more details. The incompatibility could be due to the API level, OpenGL compression format, CPU, screen size and density, device features, or even other factors about your app such as lack of availability in the geographic locale.
Targeted by another binary in the current version
If you're uploading multiple APKs, the device might already be supported by another APK. If so, when you move your mouse over the unsupported device, it says:
Targeted by another binary in the current version.
Multiple APKs cannot support the same device. You'll need to edit the device support for one APK so that you can select support for the device with the other APK. See Add Multiple APKs for the Same App for step-by-step details. See Multiple APKs for the Same Application Listing for a more conceptual background.
Last updated: May 03, 2022