React-native run-android命令通过在android模拟器中留下消息来终止。信息如下:
无法加载脚本。确保你要么运行Metro服务器,要么运行你的捆绑包index.android。Bundle '被正确地打包以便发布。
我做错了什么?
React-native run-android命令通过在android模拟器中留下消息来终止。信息如下:
无法加载脚本。确保你要么运行Metro服务器,要么运行你的捆绑包index.android。Bundle '被正确地打包以便发布。
我做错了什么?
当前回答
嘿,伙计们,两个按钮的组合解决了我的问题。这与港口有关。
adb reverse tcp:8088 tcp:8088
react-native run-android --port=8088
通过这样做,应用程序可以通过USB连接我的手机。 我认为我的AV或Vagrant或PC中的其他东西正在使用该端口。
如果需要,您可以将8088更改为其他内容。
享受吧!
其他回答
默认情况下,一个名为“Metro server”的小型JavaScript服务器运行在端口8081上。
您需要使此端口可用于此服务器启动。所以,
释放端口 关闭虚拟设备 “react-native run-android”。
如何释放端口?
http://tenbull.blogspot.com/2019/05/how-to-kill-process-currently-using.html
如何在windows中杀死当前使用本地主机端口的进程?
最重要的是,我从8升级了我的节点版本。X到10.x(最新),正如facebook建议的那样 @ https://facebook.github.io/react-native/docs/getting-started
你还没有启动捆扎机呢。在项目的根目录下运行npm start或react-native start,然后再执行react-native Run -android。
在我的例子中,我试图在模拟器上运行应用程序。但是,我得到了这个
这个IP 10.0.2.2可以从模拟器chrome浏览器访问。问题是这个IP不在Android网络安全设置白名单中。所以,无论你在这里看到的IP地址添加到下面的设置,你就可以开始了。
./android/app/src/main/AndroidManifest.xml
<application
android:name=".MainApplication"
+ android:usesCleartextTraffic="true" <- Add this line
android:allowBackup="true"
android:label="@string/app_name"
android:icon="@mipmap/ic_launcher"
./android/app/src/main/res/xml/network_security_config.xml
</network-security-config>
<domain-config cleartextTrafficPermitted="true">
<domain includeSubdomains="true">localhost</domain>
<domain includeSubdomains="true">10.0.1.1</domain>
<domain includeSubdomains="true">10.0.2.2</domain>
<domain includeSubdomains="true">10.0.3.2</domain>
</domain-config>
</network-security-config>
只需将<domain inclesubdomains ="true">10.0.2.2</domain>替换为react-native错误中显示的IP。
关闭代理,如果你在android studio设置代理,默认使用代理
你也可以把node js降级到小于12的版本,然后删除nodemodule,然后再次运行NPM install