Sooner or later, third-party developers will want to update their apps. Thankfully, handling updates is similar to handling new app submissions. On this page, we'll discuss:
Developers should be able to submit an update for any of their apps through the developer dashboard. Usually, this option is located next to each app status on the My Apps (or equivalent) page, but it may also be located on the settings page for each app.
Most app marketplaces collect updates through a dedicated form, which may be the same form used for new app submissions. The form is pre-populated with the app's existing metadata, which the developer modifies according to the changes they are making. The marketplace may also require the developer to submit a changelog, as reference for both review teams and users.
As with new app submissions, marketplace administrators should receive a notification when an update is submitted. In many ways, the review process is the same, consisting of one or many teams depending on the size and preference of the app marketplace.
One major difference when reviewing app updates is that only the items which have changed should be reviewed. To this end, app marketplaces should automatically compare incoming updates to previous versions of an app, highlighting the diff to review teams.
In marketplaces where the review process consists of multiple stages, it may be possible to forego one or more stages if those aspects of the app remain unchanged. For example, if a developer updates the description of their app, a functional test is not necessary as part of the review process.
The developer almost always has control over the naming and numbering of versions. However, when the developer makes a change to the behavior of the app itself (i.e. not just its assets), they should be required to increment the version number.
We've discussed how to process app updates, including the update submission process and versioning policies. In the upcoming sections, we'll talk about optimizing the Developer Experience in app marketplaces, starting with Onboarding.