webstorm 不启动模拟器,仅调用 cli 命令;ios 需 xcode 及 command line tools,android 需 android studio、sdk 和已启动 avd;调试前必须手动启用 debug js remotely。

WebStorm 本身不启动模拟器,只调用 CLI
WebStorm 没有内置 iOS 或 Android 模拟器。它只是封装 react-native run-ios 或 react-native run-android 命令,执行效果完全取决于你本地是否装好对应平台的开发环境。
常见误判:点了运行按钮没反应,就以为是 WebStorm 配置错了——其实大概率是 Xcode、Android Studio 或环境变量根本没配好。
- iOS 依赖:
Xcode+Command Line Tools(必须在 Xcode → Preferences → Locations 中手动指定) - Android 依赖:
Android Studio+SDK+ 已创建并启动的AVD(WebStorm 不会自动拉起模拟器) -
ANDROID_HOME必须指向 SDK 根目录(如/Users/xxx/Library/Android/sdk),且platform-tools在系统PATH中
run-ios 卡在 “Found Xcode workspace” 后没反应?检查这三处
典型现象:终端或 WebStorm 运行日志停在 info Found Xcode workspace "MyApp.xcworkspace",之后无响应,也不报错。
本文档主要讲述的是React Native For Android 源码编译;希望对大家会有帮助;感兴趣的朋友可以过来看看
- 运行
which xcodebuild,返回空?说明系统找不到xcodebuild—— 检查PATH是否包含/Applications/Xcode.app/Contents/Developer/usr/bin - 项目根目录下没有
ios/MyApp.xcworkspace?首次初始化后需进ios/目录手动执行pod install(尤其 RN ≥ 0.60) - WebStorm 运行配置中
Parameters写了run-ios --simulator="iPhone 15",但设备名不匹配(可用xcrun simctl list devices查真实名称);建议先删掉参数让 CLI 自动选
run-android 报 “No connected devices”?不是 WebStorm 的锅
WebStorm 调用 react-native run-android 时,只做一件事:执行 adb devices,发现无在线设备就直接失败。它不会帮你开 AVD,也不会提示“请先启动模拟器”。
- 必须提前在 Android Studio → Device Manager 中启动一个 AVD(或连真机)
- 确认
adb devices在终端能列出设备(状态为device,不是offline或unauthorized) - WebStorm 运行配置的
Working directory必须设为项目根目录(即含android/子目录的位置),不能设成android/本身 - RN ≥ 0.73 默认启用新架构(
newArchEnabled = true),部分旧 AVD 镜像可能不兼容;可临时在android/gradle.properties中加newArchEnabled=false测试
调试前必须手动触发 Debug JS Remotely
WebStorm 启动 App 后,JS 断点不会自动生效。Metro 默认走本地 bundle,必须手动切换到远程调试模式,否则断点灰色、跳转不到源码、或直接报 SyntaxError: Unexpected token import。
- Android 模拟器:按
Ctrl+M(Windows/Linux)或Cmd+M(macOS)唤出菜单 → 点Debug JS Remotely - Android 真机:摇晃手机(幅度要大),或执行
adb shell input keyevent 82 - 确保 Chrome 已安装
JetBrains IDE Support插件(作者 JetBrains s.r.o.),且chrome://inspect/#devices显示IDE connected - WebStorm 运行配置里务必取消勾选
Start React Native Bundler,避免和已运行的npx react-native start冲突
最容易被忽略的是:模拟器或真机上没手动点 Debug JS Remotely,就以为断点该生效了——它真的不会自己连上。










