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

Which apps and frameworks work with Expo Simulators

Edit page

Expo Simulators runs any app built for the Android Emulator or the iOS Simulator, including Expo, React Native, native, Flutter, and Unity apps. React Native features work only in React Native apps.


Expo Simulators works with any app that is built for the Android Emulator or the iOS Simulator. The remote device is a stock Android Emulator or iOS Simulator. The device has no Expo or React Native requirement. The toolchain that made the app changes only two things: how you get the app onto the device, and which controller features work.

Compatibility

ToolchainApplication sourcesDevice-level controlReact Native features
Expo and React NativeEAS Build ID, fingerprint, archive URL, local buildYesYes
Expo Go--expo-goYesYes
Native Android and iOSArchive URL, local build, EAS Build ID for EAS Build artifactsYesNo
FlutterArchive URL, local buildYesNo
Unity and hybridArchive URL, local buildYesNo

Device-level control acts through the operating system. It includes opening apps, reading the accessibility tree, pressing elements, entering text, screenshots, and recordings. Accessibility-based actions need an app that exposes an accessibility tree, which Unity apps do not do by default.

React Native features need a React Native app and a running Metro server. They include Fast Refresh, React component inspection, and React render profiling.

Test frameworks

FrameworkHow it connects
AppiumAn appium session gives your Appium client a server URL and capabilities.
Maestroagent-device can run supported Maestro YAML.
e2eThe @e2e-dev/eas integration starts one session for each e2e worker.

Build requirements for every toolchain

PlatformRequired buildFails to install
AndroidAn .apk whose native libraries, if any, include an emulator application binary interface (ABI), such as x86_64An .aab
iOSA .app built against the iphonesimulator SDK. For an archive URL, a .tar.gz or .tgz of the .app.An .ipa device build, a .zip archive

See Which build to install on Expo Simulators.

Common questions

Does my app need the expo package?

No. The device runs any simulator or emulator build. EAS CLI needs a project directory with package.json and an app config that contains the EAS project ID. The REST API needs only the project ID.

Which features do I lose with an app that is not React Native?

Fast Refresh, Metro, React DevTools, component inspection, and React render profiling do not work. See Expo Simulators limitations.