React-native run-android命令通过在android模拟器中留下消息来终止。信息如下:

无法加载脚本。确保你要么运行Metro服务器,要么运行你的捆绑包index.android。Bundle '被正确地打包以便发布。

我做错了什么?


当前回答

模拟器上的错误信息有点误导人。我用的是Macbook。我需要通过运行$ chmod 755 ./gradlew来更改android/gradlew的权限,然后可以构建应用程序并将其部署到android模拟器。

其他回答

我遇到了同样的麻烦,对我来说,问题是adb不在正确的环境路径,错误是告诉你地铁端口,而你在adb,端口被杀死并重新启动。

添加环境变量(ADB)

开放环境变量 从第二帧PATH变量中选择,然后单击下面的编辑选项 点击添加选项 提交sdk平台工具路径C:\Users\ My User \AppData\Local\Android\ sdk \platform-tools

注意:或取决于adb.exe在您的机器中的位置

保存更改

再次运行android build

$ react-native run-android

Or

$ react-native start

$ react-native run-android

我的解决方案如下:

启动Metro服务器

$ react-native start

开始安卓

$ react-native run-android

如果看到错误提示“端口8081已被使用”,那么您可以终止该进程并重新运行

$ react-native start

参见React Native故障诊断页面。

这个错误突然出现在我面前,而我解决它的方法是:

Android Studio中的AVD管理器 在虚拟设备的操作下按下箭头 擦除数据 重新启动地铁

只需添加三个飞溅: node_modules \ metro-config \ src \ \ blacklist.js违约

更换此部件:

var sharedBlacklist = [
  /node_modules[\/\\]react[\/\\]dist[\/\\].*/,
  /website\/node_modules\/.*/,
  /heapCapture\/bundle\.js/,
  /.*\/__tests__\/.*/
];

这是由于android设备无法连接到地铁服务器。如果上面的不起作用,检查一下你的android设备是否配置了代理。(设置>代理>不代理)。