React Native for Android:无法连接到开发服务器

React Native for Android:无法连接到开发服务器,android,reactjs,react-native,Android,Reactjs,React Native,我正在为现有项目设置react native android。我按照佩奇的指示去做。当我运行react native run android时,我能够在模拟器中打开应用程序。该应用程序运行良好。 但问题是,当我使用双击R键重新加载它时,它抛出错误无法连接到开发服务器 在Emulator和real设备上都出现此错误 我尝试过的解决方案: 在同一wifi上运行real device和Macbook 在Android设备/模拟器中设置macbook的IP地址和端口,位于Dev Setting->De

我正在为现有项目设置react native android。我按照佩奇的指示去做。当我运行
react native run android
时,我能够在模拟器中打开应用程序。该应用程序运行良好。 但问题是,当我使用双击
R
键重新加载它时,它抛出错误
无法连接到开发服务器

在Emulator和real设备上都出现此错误

我尝试过的解决方案:

  • 在同一wifi上运行real device和Macbook
  • 在Android设备/模拟器中设置macbook的IP地址和端口,位于
    Dev Setting->Debug server host&port for device
  • 正在运行adb反向tcp:8081 tcp:8081
  • 还是不走运

    当我使用
    CMD+D
    打开developer选项并单击
    Debug JS remote
    时,它会抛出不同的错误:
    无法连接到远程调试器。网络安全策略不允许与192.x.x.x进行明文通信。

    在某些情况下,它会显示“连接到远程调试器”,但会被卡住。
    请检查您的设备是否连接了Internet。若Wi-Fi符号上有一个十字,则表示MacOS和emulator之间的连接出现了一些问题。对我来说,上次帮助我采取了以下步骤:

    1) 转到Mac>系统首选项>网络>高级…>DNS

    2) 单击+添加新的DNS服务器

    3) 在此处添加8.8.8.8


    4) 关闭模拟器,然后再次打开它。检查连接,如果构建正常,请检查您的设备是否具有Internet连接。若Wi-Fi符号上有一个十字,则表示MacOS和emulator之间的连接出现了一些问题。对我来说,上次帮助我采取了以下步骤:

    1) 转到Mac>系统首选项>网络>高级…>DNS

    2) 单击+添加新的DNS服务器

    3) 在此处添加8.8.8.8


    4) 关闭模拟器,然后再次打开它。检查连接,并检查构建是否正常运行

    此回答修复了我的问题:

    似乎是Android Pie上的
    Cleartext
    出现了问题,因为我在问题中也提到过,当单击
    Debug js remote
    时会显示Cleartext错误

    在AndroidManifest.xml中添加
    android:usesCleartextTraffic=“true”
    ,为我解决了这个问题


    这个答案解决了我的问题:

    似乎是Android Pie上的
    Cleartext
    出现了问题,因为我在问题中也提到过,当单击
    Debug js remote
    时会显示Cleartext错误

    在AndroidManifest.xml中添加
    android:usesCleartextTraffic=“true”
    ,为我解决了这个问题

    
    
    你好,谢谢。我做了改变。仍然不起作用。同样的错误。一段时间后,它将显示带有绿色顶部栏“连接到远程调试器”的空白屏幕。不是,它被卡在那里了。这以前也发生过。我已经发布了答案:在AndroidManifest.xml中添加
    android:usesCleartextTraffic=“true”
    解决了这个问题。嗨,谢谢。我做了改变。仍然不起作用。同样的错误。一段时间后,它将显示带有绿色顶部栏“连接到远程调试器”的空白屏幕。不是,它被卡在那里了。这种情况以前也发生过。我已经发布了答案:在AndroidManifest.xml中添加
    android:usesCleartextTraffic=“true”
    ,解决了这个问题。只是好奇,你有没有尝试在不同的模拟器上这样做?我在模拟器Google Pixel 3上尝试过,当时它不起作用。我也在真正的设备上试过。但也有同样的问题。只是好奇,你有没有试过在不同的模拟器上这样做?我试过在模拟器Google Pixel 3上,但它不起作用。我也在真正的设备上试过。但也有同样的问题。请注意,这可能是一个安全问题,android:usesCleartextTraffic=“true”只应在AndroidManifest.xml中用于调试目的。在生产中,所有信息都应通过HTTPS传输。请注意,这可能是一个安全问题,android:usesCleartextTraffic=“true”仅应在AndroidManifest.xml中用于调试目的。在生产中,所有信息都应通过HTTPS传输。