You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

无法在Genymotion模拟器运行/调试React Native项目求助

解决React Native Expo应用无法在Genymotion模拟器运行的报错问题

我碰到过不少开发者遇到这个Unknown error: not all success patterns were matched的报错,大多和ADB连接、模拟器配置或者VSCode插件设置有关。结合你的场景(Expo + Genymotion + React Native Tools),可以试试下面这些解决方案:

1. 确保Genymotion和本地ADB版本兼容

这是最常见的触发原因,Genymotion自带的ADB版本很可能和你本地Android SDK的ADB不匹配:

  • 打开Genymotion的Settings -> ADB,选择「Use custom Android SDK tools」,然后指向你本地Android SDK的路径(比如Mac上的~/Library/Android/sdk,Windows上的C:\Users\<你的用户名>\AppData\Local\Android\Sdk)
  • 打开终端运行adb devices,确认输出里能看到Genymotion模拟器的设备条目(格式类似192.168.56.101:5555 device)
  • 如果看不到设备,重启ADB服务:先运行adb kill-server,再运行adb start-server

2. 修正VSCode的launch.json配置

你的launch.json内容不完整,针对Expo + Genymotion的场景,正确的配置需要包含这些关键项:

{
  "version": "0.2.0",
  "configurations": [
    {
      "name": "React Native: Expo (Genymotion)",
      "type": "reactnative",
      "request": "launch",
      "platform": "android",
      "expo": true,
      "target": "genymotion",
      "port": 19000,
      "adbPath": "<你的ADB完整路径>" // 可选,如果插件找不到ADB的话手动指定
    }
  ]
}

重点是要明确"expo": true和"target": "genymotion",让React Native Tools插件知道要通过Expo启动到Genymotion模拟器。

3. 手动启动验证环境

先绕开VSCode插件,直接验证Expo和Genymotion的连接是否正常:

  • 在终端运行expo start,等待Metro服务器加载完成
  • 如果Genymotion里没装Expo Go,先下载Expo Go的APK,拖到Genymotion模拟器里安装
  • 打开Genymotion里的Expo Go,扫描终端里的二维码,或者手动输入Metro的地址(比如exp://192.168.xxx.xxx:19000)
  • 如果能正常启动应用,说明问题出在VSCode插件的配置上,再回头调整launch.json

4. 更新React Native Tools插件并检查设置

  • 打开VSCode的扩展市场,找到React Native Tools,确保是最新版本,旧版本可能存在兼容性问题
  • 打开插件的设置(右键插件 -> Extension Settings),找到「React Native: ADB Path」,确认路径指向你本地的ADB可执行文件(比如platform-tools/adb)

5. 清除缓存重置环境

有时候缓存会导致奇怪的问题,试试这些操作:

  • 运行expo r -c清除Metro的缓存
  • 关闭Genymotion模拟器和VSCode,重新打开
  • 再次尝试通过VSCode启动应用

内容的提问来源于stack exchange,提问作者lat94

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.22 09:41:49