Workflow for updating and previewing release channels in Expo Go using eas update?

Reading the terminal errors and docs on eas update, it seems to indicate that “publishes” done with eas update aren’t meant to be opened with Expo Go, but require an expo dev client instead. Is this the case?

Is it still possible to preview updates to certain channels with Expo Go if the updates were pushed with the eas update --branch command?

When not using any native modules or custom native code, is it possible to have e.g. a ‘staging’ channel that can be previewed both in Expo Go and an Expo Dev Client?

Yes, you can use eas update --branch your-branch. Then, in Expo Go, tap on a project. Once there, you’ll see all branches that contain an update. There, you can also select any individual update (even past ones).

You’ll also need to make sure that in your app.json, you have

"expo": {
  // ...
  "runtimeVersion": { 
    "policy": "sdkVersion"
  }
}

Right now, Expo Go can only open sdkVersion runtime version policies.

Also, development builds (builds made with the expo-dev-client library) can open any branch’s update, as long as the update has the same runtime version as the development build. As a summary:

Expo Go can open updates that:

  • Use the sdkVersion runtime version policy.
  • The update is on an SDK version that is supported by Expo Go. Usually Expo Go supports 2-3 SDK versions.

Development builds can open updates that:

  • Use any runtime version policy.
  • The update uses the same runtime version that the development build was built with.
2 Likes

This topic was automatically closed 20 days after the last reply. New replies are no longer allowed.