Expo SDK 48中React Native Debugger无法连接问题求助
Expo SDK 48 下 React Native Debugger 连不上的解决办法
先说明:Expo SDK 48 开始把原来的「Debug Remote JS」改成「Open JS Debugger」了,这是版本更新后的正常变化,不是bug。下面是针对连不上19000端口的排查步骤:
1. 先搞定 React Native Debugger 本身的配置
- 打开 RN Debugger,顶部菜单栏点「Debugger」→「New Window」,手动输入端口19000(或者用快捷键
Cmd+T/Ctrl+T新建窗口填端口) - 检查19000端口有没有被别的程序占了:
要是有占用,把对应的进程关掉再重启 RN Debugger。# Mac/Linux 查端口占用 lsof -i :19000 # Windows 用这个命令 netstat -ano | findstr :19000
2. 调整 Expo 项目的打包配置
- 去项目根目录的
app.json或者app.config.js里加这段配置:{ "expo": { "packagerOpts": { "port": 19000, "dev": true, "minify": false } } } - 然后清缓存重启 Expo 服务:
npx expo start --clear
3. 设备端的调试设置要到位
- 要是用的是 Android 模拟器/真机,先在开发者菜单里开「Enable Hermes Debugging」,再点「Open JS Debugger」
- 真机的话,得确保和 RN Debugger 在同一局域网,在开发者菜单选「Configure Bundler」,输入你电脑的局域网IP(比如
http://192.168.xxx.xxx:19000),再重新打开调试器。
4. 装个辅助包试试(可选)
如果上面的方法都不行,试试装react-native-debugger-open:
- 安装依赖:
npm install --save-dev react-native-debugger-open - 在
package.json的scripts里加一行:"scripts": { "debug": "open 'rndebugger://set-debugger-loc?host=localhost&port=19000'" } - 运行
npm run debug启动 RN Debugger,再去设备里打开 JS 调试器。
5. 检查 Hermes 的兼容性
如果你项目里手动把 JS 引擎改成了 JSC(app.json里jsEngine: "jsc"),得确保你的 RN Debugger 是最新版本,旧版本对 JSC 的支持可能有问题。
内容的提问来源于stack exchange,提问作者Oleg
相关产品推荐
相关产品推荐

