MoccoDocs

OTA and force update

Mocco puts the changes that reach your users' phones behind the same approvals as a production deploy. Three parts are available today, and each works on its own.

Force update tells an app on an old store build to update. You set a minimum supported version (older builds must update), a recommended version (older builds see a prompt they can dismiss) and versions to block outright. The app asks Mocco on launch. Raising a version waits for approval when you require it; lowering one applies at once and is reviewed afterwards, so nobody waits for an approver during an incident. See Force update.

Gated OTA publishing keeps your current OTA tool (EAS Update, a hosted CodePush service or hot-updater). Mocco holds the tool's publishing token and hands it only to a pipeline step that passed an approved gate, so an update can't go out without the approval, and every release is in the audit log. Nothing changes in your app. See Release a token to your pipeline and the guide for your tool.

Hosted OTA updates serve your React Native app's updates from Mocco to the stock expo-updates client: signed in your CI, rolled out by percentage, promoted to protected channels through approvals, and rolled back instantly. See Host OTA updates on Mocco, and Move to Mocco-hosted OTA if you use CodePush or EAS Update today.

Before you start

  • Turn on OTA and force update under Products in your workspace.

  • Create a project and add your iOS and Android apps on the project's Overview page. Force update works per store app.

  • Create the roles your approvers hold under Access (for example mobile-release) and add their members. Only workspace owners and admins can change roles.

Setup order

  1. Force update: set a policy for each store app and call the version check from your app.

  2. Release a token to your pipeline: store your OTA tool's token and allow one pipeline gate to receive it.

  3. The guide for your tool: EAS Update, CodePush or hot-updater.