How to force update a mobile app when a new version is available

  • If your app is using server-side APIs to get data, then inevitably there will be API changes during the active development period. While it is a good practice to have backward compatibility, you can’t endlessly support the old versions, and one day you would love to upgrade all order users and get rid of that deprecated API.
  • Sometimes, there are some nasty errors pushed to the production, and you only realize it when users start complaining. In this case, you just quickly give a hotfix and wish all your users will get the new fixed version immediately.
  • For collaborative applications, when you support multiple platforms (iOS, Android, web) you need some breaking changes to be pushed for all versions.
Version Control JSON

Recommendations and best practices

  1. Make sure the version control is integrated into the application before the first public release
  2. It is better to store supported versions in a JSON file, that could be edited without making server releases since the app version updates are separate from server releases.
  3. Note that once the application is released, it will not immediately get available for all countries, or regions. So, before making a forced update for the latest version it is better to wait one day.
  4. If it is not a critical bug fix, then we recommend using a smooth update process. Here is our typical process: once the app is released we wait 2–3 days, in this period the users who have auto-update enabled will automatically get the latest version. Then for one week, we will make it a recommended update with an option to skip it since users may not have a data connection to install a new update. Only after that once the majority of active users are upgraded, we make it a force to upgrade.
  5. On Mobile applications displaying the current version is another good practice to support. If the application has a left sidebar, you can display it there or add it to the help/settings page.

In-app updates by Google Play

As I mentioned earlier in this post, Google Play has provided its own functionality to control and force update Android app versions.

  • With each new version, you set a Priority from 1 to 5.
  • Inside the application, you can request new available app versions with their priorities and make a decision if it is a critical update or a nice-to-have feature.
  • You can also check how many days were passed from the last update suggestions.
  • If you want to update to a certain version, then you just make that build version priority 5, and then on the next app launch time users will be forced to update if using older versions.
  • It works only for Android applications. If you support both iOS and Android platforms, then this solution is not useful.
  • It also doesn’t support Android applications installed from other marketplaces (e.g. Huawei store).
  • The existing versions’ priorities could be changed only by making an API, couldn’t find any UI dashboard to explicitly manage supported versions and priorities.

--

--

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Yerem Khalatyan

Yerem Khalatyan

CEO & Co-Founder at InConcept Labs