When developing an Expo app on a PC you either to need to run your app on a device or an Android emulator – because you need a Mac to run an iOS simulator on. I found the instructions to do with Expo emulators a little lacking in detail. As a Windows PC user primarily, I struggled to find all the information I needed to run my Expo app in an Android Emulator. So I collated a lot of the info here and outlined how I got my Expo app running on an Android emulator, including a summary of some common issues you may face like the “Couldn’t start project on Android” message.
Table of contents
Getting started – prerequisites
I’m presuming at this point that you’ve, installed Expo, created an Expo project, and built your Expo app. You’ll need to download Android Studio and install it, and have at least one emulator configured.
How to run your Expo app in an Android emulator
- Start Expo by typing expo start on the command line.
- Open Android Studio.
- Open your project in Android Studio.
- Open the ‘AVD manager’ from the Android Studio toolbar.
- Run an Android emulator.
- Click ‘run on Android device/emulator‘ in the Expo client.
From Android Studio here is the open AVD Manager button:
To run an Android Emulator for your Expo app, click the play symbol next to the one you want to use from the AVD Manager window:
Some common problems with Android emulators
There’s a few problems you can find with each step, so here’s a few things to bear in mind if any of the above steps don’t work.
‘Couldn’t start project on Android‘ Message
If you see this message:
“Couldn’t start project on Android: No Android connected device found, and no emulators could be started automatically. Please connect a device or create an emulator (https://docs.expo.io/workflow/android-studio-emulator). Then follow the instructions here to enable USB debugging: https://developer.android.com/studio/run/device.html#developer-device-options. If you are using Genymotion go to Settings -> ADB, select “Use custom Android SDK tools”, and point it at your Android SDK directory.”
…it means that steps 2 and 3 probably haven’t been done. It’s not a particularly obvious message and you’d be surprised how easy it is to forget both steps.
Couldn’t adb reverse: device ‘adb’ not found
If you see a message saying:
“Couldn’t adb reverse: device ‘adb’ not found”
… most of the time if I ignore this and click ‘Run in Android Emulator’ again after a few seconds it runs just fine.