Developer Console

7 developer best practices for app updates

Waqar Aziz Feb 21, 2023
Share:
How to Best practices
Blog_Header_Post_Img

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.

Tip 1: Schedule your app releases

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.

schedule app releases

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.

Tip 2: Release your app update in a staged rollout
staged rollouts

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.

Tip 3: Share testing instructions

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.

testing instructions

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.

Tip 4: Follow the requirements for multimedia apps

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.

Tip 5: Incorporate performance testing

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:

  • Latency - The time taken by an app to draw the first frame when launched for the first time (and successive launches) since the device booted, or since the system killed the app.
  • Memory - Foreground and background memory usage by the app.
  • Stability - Any event that can freeze or crash the app, both internal or external the app.
  • Fluidity - The frame drop rate against the total number of frames rendered while the app is in foreground.
  • Ready-to-Use - The time required from the app launch till the time the app becomes ready for customer interaction.

Tip 6: Implement feature flags

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.

Tip 7: In-app prompts for updates

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). 

in-app update prompts

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:

Copied to clipboard
// 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)

Summary

To recap, the 7 best practices for updating your app are:

  1. Schedule your app releases
  2. Release your app update in a staged rollout
  3. Share testing instructions
  4. Follow the requirements for multimedia apps
  5. Incorporate performance testing
  6. Implement feature flags
  7. In-app prompts for updates

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.

Related articles

Sign up for our newsletter

Get the latest developer news, product releases, tutorials, and more.