React Native真机debug模式报Unable to load script错误如何解决?
React Native 真机Debug模式
Unable to load script报错解决方案(yarn环境) 报错原文:Unable to load script. make sure you're either running a metro server react native
1. 启动Metro服务并清理缓存
- 关闭所有当前项目相关的终端进程,在项目根目录执行命令启动Metro服务:
yarn start --reset-cache - 启动成功后保持该终端处于运行状态,不要关闭。
2. 网络与端口配置
- 确认电脑和测试真机连接同一WiFi网络,关闭电脑端VPN、代理工具,关闭真机的移动数据
- 端口验证:执行对应命令确认Metro默认端口8081未被占用
- Mac/Linux:
lsof -i :8081 - Windows:
netstat -ano | findstr 8081
- Mac/Linux:
3. 设备专属配置
安卓真机配置
- 执行
adb devices确认设备已被正常识别 - 执行端口映射命令:
adb reverse tcp:8081 tcp:8081 - 摇晃真机调出开发菜单,进入Dev Settings → Debug server host & port for device,填写电脑的局域网IP+端口,示例:
192.168.1.5:8081
iOS真机配置
- 用Xcode打开项目ios目录下的.xcworkspace文件,检查签名配置为有效开发证书,且当前真机已添加到设备信任列表
- 打开项目的Info.plist文件,在
NSAppTransportSecurity配置项下新增局域网IP的HTTP访问白名单,将NSAllowsArbitraryLoads设置为true
4. 重新启动应用
保持Metro服务终端运行,新开一个终端进入项目根目录执行启动命令:
- 安卓:
yarn android - iOS:
yarn ios
异常排查
如果以上操作完成后依然报错,执行以下操作后重试:
- 删除项目根目录的
node_modules文件夹,执行yarn install重新安装依赖 - 清空原生端构建缓存:
- 安卓:进入android目录执行
./gradlew clean(Mac/Linux)或gradlew clean(Windows) - iOS:进入ios目录执行
pod deintegrate && pod install
- 安卓:进入android目录执行
内容的提问来源于stack exchange,提问作者Arslan
相关产品推荐
相关产品推荐

