Testing a React Native App on Real Devices
Testing on Real Devices
~11 Min. Lesezeit Zuletzt aktualisiert am August 8, 2026
So far we've tested through the Expo Go app – which is entirely sufficient for most chapters of this tutorial. For more advanced features (custom native libraries, push notifications, in-app purchases) you'll eventually need a "development build" on a real device. This chapter explains both paths.
Path 1: Expo Go (simplest, sufficient for this tutorial)
As shown in chapter 3: install Expo Go from the App Store or Google Play, scan the QR code from npx expo start, done. No Apple account, no Google account, no cost, no cable needed. Limitation: Expo Go only includes a fixed, predefined set of native modules – custom native libraries (that aren't part of the "Expo Managed Workflow") don't work inside it.
Path 2: Android via USB debugging
- On the Android device: open Settings > About phone, tap "Build number" 7 times to unlock developer mode
- Enable Settings > Developer options > USB debugging
- Connect the device to your computer via USB cable, confirm the security prompt on the device
- Check with
adb devicesin the terminal that the device is recognized (adb is part of the Android SDK, usually installed alongside Android Studio) - Run
npx expo run:android– builds the app natively and installs it directly on the connected device, entirely without Expo Go
This path produces a full-fledged "development build" – your own app with your own app icon, supporting every native library, not just the fixed selection Expo Go provides. Free, no Google account strictly required, just a USB cable and Android Studio (for the Android SDK tools).
Path 3: iOS device (with or without the Apple Developer Program)
There's an important distinction from Android here that often causes confusion:
| Account type | What's possible |
|---|---|
| Free Apple ID (no Developer Program) | App installable on your own iPhone via Xcode + USB cable, BUT: the certificate expires after 7 days and the app must be reinstalled; no TestFlight, no store release |
| Apple Developer Program ($99/year) | certificates valid for 1 year, TestFlight distribution to up to 10,000 testers without store review, App Store release possible |
For purely local testing on your own device while learning, the free Apple ID is entirely sufficient: add your Apple ID under Settings > Accounts in Xcode, then run npx expo run:ios --device (requires a Mac – unlike Android builds, iOS builds cannot be produced on Windows/Linux). For ongoing use without re-signing weekly, or for a later release, you'll need the paid Developer Program (see the "Publishing on the Apple App Store" chapter).
Achtung: iOS development with real builds (not just Expo Go) requires a Mac with Xcode installed. There is no official way to build native iOS apps on Windows or Linux – if you don't own a Mac, your only options for iOS are Expo Go or a cloud build service like EAS Build (see the next chapter for free alternatives).
Don't forget: same Wi-Fi
As mentioned in chapter 3: your computer and test device must be on the same Wi-Fi network so the device can reach the Metro bundler server on your computer. On restrictive corporate or university networks ("client isolation"), "tunnel" mode often helps: npx expo start --tunnel.