When publishing apps updates on the Amazon Appstore, there are several key considerations to keep in mind. Typically, the majority of customers receive approved app updates in the background. However, when specific updates require permission updates or automatic updates are disabled, it can take several days for these updates to reach customers.
To ensure a safe and controlled rollout to customers, we’re sharing 7 developer best practices for a seamless app update experience.
By default, new app versions are made available as soon as it passes Amazon’s testing. However, if an app update is available for customers over the weekend, it may be difficult to reach support for any immediate issues. To better control your app’s release plan, be sure you specify the preferred time and date of when you want the update to be made available to customers.
To schedule your app’s releases, head over to Step 4: Review & Submit and input when you want to like the version of your app to publish.. Keep in mind that the publishing process can take a few hours before your new version is live and available to customers.
With staged roll-outs, you can release the upcoming version of your app through phased approach by slowly incrementing the percentage of users who receive the update. This developer feature helps limit the scope of any bugs or issues in your release, as well as test enhancements and new features in a controlled, measurable way.
To learn more, check out our technical documentation on staged rollouts.
Make sure to describe difficult-to-discover features and how to test these features. For example, if your app requires customers to log in before launching and using the app, include a set of test credentials for testing. Testers may not be in the same region as your customers, so include instructions to circumvent any geo-restrictions during the testing process.
To provide testing details, fill in the ‘Testing Instructions’ section in Step 4: Review & Submit. This information will help prevent additional churn and delays during app reviews for a new release.
All Multimedia apps have the same requirements for how to correctly handle activity lifecycle and audio focus events, MediaSession, decoder instances, wake locks, and more. Similarly, these requirements are essential for Fire TV apps to interact harmoniously with other apps on Fire TV. Review the requirements to avoid delays during the app review process and enhance the experience for your customers on Fire TV.
To follow these app requirements, review the details in our Multimedia docs.
Device specifications and capabilities varies across Fire TV and Fire tablets. To provide optimal experience across all devices, it’s essential that you test against different versions of Fire OS before submitting a new version of your app.
To incorporate performance testing into your release process, look out for these traits:
Feature flags (also known as feature toggles) are a simple mechanisms to switch functionality, on or off, during runtime without having to deploy a new version of your app. You can leverage feature flags for a variety of purposes, such as controlled rollouts, A/B testing, or disabling a new feature if a bug has been discovered.
To enable feature flags, set them as variables in a hosted config file on your server or via a third-party feature flag management tool such as AWS AppConfig or Firebase RemoteConfig.
In some scenarios, you may want to gently nudge your customers in-app to update to the latest version (i.e. critical bug fixes or major functionality updates).
To in-app prompt for updates, use AppDialog to let your customers know about the new version of your app and include an ‘Update’ button to deep link directly to your app detail page in the Appstore.
The following code shows how you deep link to the app detail page within Fire OS:
// Deep link to the app detail page on Fire OS
Uri uri = Uri.parse("amzn://apps/android?asin=YOUR_APP_ASIN&intent=app_update");
Intent intent = new Intent(Intent.ACTION_VIEW, uri);
startActivity(intent);
Remember to complete your staged rollout to 100% before prompting customers about your update. For the majority of customers, an update will be applied in the background without any need for customer intervention. You should only leverage this mechanism with customers that continue to remain on an older version of your app after several weeks. Keep in mind customers should be able to dismiss your update prompt.
To implement on-device deep-linking, review our technical documentation.
Note: To test the forced update flow, you will need to install and test the app through Live App Testing (LAT).
To recap, the 7 best practices for updating your app are:
Incorporating these into your app updating process will benefit your customers through steady updates. Make sure to review the full pre-submission checklist when you’re ready to submit your app in the Amazon Appstore.