This documentation is available as Markdown for AI agents and LLMs. See the full Markdown index or append .md to any documentation URL.

Review a pull request on a remote Android Emulator or iOS Simulator

Edit page

Add a link to a pull request that opens the change on an Expo Simulators session in the browser, so reviewers can test it without building it.


A reviewer can test a pull request in the browser without a local build. Create a simulator-compatible build for the pull request, then add a create session link to the pull request. When the reviewer opens the link, EAS starts a session with the build and shows the browser preview. On iOS, use an iOS Simulator build. On Android, use an APK build.

1

Create a simulator-compatible build for the pull request

For iOS, use a build profile with ios.simulator: true. For Android, use a build profile that creates an APK, because an AAB does not install. Create the build in CI or with EAS Workflows:

Terminal
- eas build --platform ios --profile remote-device --non-interactive
- eas build --platform android --profile remote-device --non-interactive

Record the build ID. For a profile example, see Build a simulator-compatible app.

2

Use the account name, the project slug, and the build ID. Add a name that includes the pull request number:

https://expo.dev/accounts/acme/projects/my-app/simulator-sessions/create?buildId=BUILD_UUID&name=PR%201234%20review

To use the most recent build that matches the native code of the pull request, use buildFingerprint and platform (android or ios) instead of buildId. For all parameters, see Start a session from a link.

3

Post the link

Add the link to the pull request description or to a comment from your CI system. Tell reviewers that each click starts a new session.

What the reviewer sees

  1. The reviewer opens the link and signs in to an Expo account that can access the project.
  2. expo.dev validates the build and starts the session. This can take about a minute.
  3. When the session is ready, expo.dev redirects to its browser preview. The reviewer uses the app in the browser.
  4. When the reviewer finishes, they stop the session from its page on expo.dev.

To return to the same session, the reviewer opens it from the project's Simulator sessions page. Opening the link again starts a new session.

Let an agent review the change

An agent can also test the pull request and post evidence. Ask the agent to use the Expo Simulators skill and start a session with the pull request build. Then ask it to run the changed flow and attach screenshots or a recording. See Let an AI coding agent verify a change on a remote simulator. Callstack's agent-device EAS Workflows template shows a similar flow in EAS Workflows, with its own emulator and simulator instead of Expo Simulators sessions.

Common questions

Can reviewers test an Android build from the link?

Yes. Create session links support Android and iOS. Use the build ID of an Android APK build, or use buildFingerprint with platform=android. A link with an application archive URL that ends in .apk also starts an Android session. The Android build or archive must be an .apk file, because an .aab file does not install. Android support is still in development, and some features that work on iOS may not work on Android yet.

How do I limit usage from review links?

Ask reviewers to stop the session when they finish. Each click on the link starts a new session that runs until someone stops it. Create session links do not set a custom duration, so the session gets the default maximum duration for your plan. See Expo Simulators usage, limits, and billing.