如何在多个Android模拟器上运行React Native Expo应用?
同时在多个Android模拟器上运行Expo React Native应用的解决方案
核心操作步骤
- 先手动启动所有需要的Android模拟器,等待每个模拟器完全加载到主屏幕,确认无卡顿或未初始化完成的状态。
- 打开终端运行
adb devices,检查所有运行的模拟器是否都在列表中,状态为device。如果有模拟器未被识别,执行adb kill-server后再adb start-server重启adb服务。 - 启动Expo开发服务器:
npx expo start(或expo start,根据你的环境选择)。 - 给每个模拟器单独部署应用:
- 第一个模拟器直接按终端提示的
a键,自动完成安装运行。 - 其他模拟器需要新开终端窗口,进入项目目录后执行:
npx expo run:android --device <设备标识>,这里的设备标识可以是adb devices输出里的设备ID,或者模拟器的名称(比如@Nexus_S_API_30)。 - 也可以用adb命令直接启动应用:
adb -s <设备标识> shell am start -n host.exp.exponent/.experience.HomeActivity --es "manifestUrl" "http://localhost:8081/index.exp",注意替换成你实际的开发服务器端口(如果不是8081的话)。
- 第一个模拟器直接按终端提示的
解决「模拟器已运行但Expo提示未启动」的错误
- adb连接异常:在模拟器的开发者选项中确认「USB调试」已开启,然后重启adb服务:
adb kill-server && adb start-server。 - Expo缓存问题:清除缓存后重新启动服务器:
npx expo start --clear。 - 模拟器性能不足:打开AVD管理器,编辑目标模拟器,分配更多内存(比如将RAM设置为2GB以上)和CPU核心,避免模拟器因资源不足假死。
- 端口冲突:检查8081端口是否被占用,换端口启动Expo:
npx expo start --port 8082,之后部署时记得同步修改adb命令里的端口号。
内容的提问来源于stack exchange,提问作者Yus
相关产品推荐
相关产品推荐

