在卡在白色屏幕上的模拟器上对本地应用程序做出反应

时间:2019-02-26 16:18:24

标签: android react-native debugging android-emulator

仅在android上并且仅在模拟器中,如果我运行我的react native应用程序,该应用程序将无法启动并卡在白屏上。终端中的捆绑器没有收到任何连接请求。

它曾经工作过,而且当我在使用相同命令(react-native run-android)的设备上运行时可以工作

我正在处理本机0.57.8

enter image description here

enter image description here

这是我从react-native log-android获取的日志:

    02-26 17:12:21.527  6544  6544 D ReactNative: ReactInstanceManager.ctor()
    02-26 17:12:21.606  6544  6544 D ReactNative: ReactInstanceManager.createReactContextInBackground()
    02-26 17:12:21.606  6544  6544 D ReactNative: ReactInstanceManager.recreateReactContextInBackgroundInner()
    02-26 17:12:21.629  6544  6544 D ReactNative: ReactInstanceManager.recreateReactContextInBackgroundFromBundleLoader()
    02-26 17:12:21.629  6544  6544 D ReactNative: ReactInstanceManager.recreateReactContextInBackground()
    02-26 17:12:21.629  6544  6544 D ReactNative: ReactInstanceManager.runCreateReactContextOnNewThread()
    02-26 17:12:21.665  6544  6604 D ReactNative: ReactInstanceManager.createReactContext()
    02-26 17:12:21.727  6544  6604 D ReactNative: Initializing React Xplat Bridge.
    02-26 17:12:21.729  6544  6604 D ReactNative: Initializing React Xplat Bridge before initializeBridge
    02-26 17:12:21.735  6544  6604 D ReactNative: Initializing React Xplat Bridge after initializeBridge
    02-26 17:12:21.735  6544  6604 D ReactNative: CatalystInstanceImpl.runJSBundle()

我什至尝试通过git还原到我知道可以工作的版本,但是仍然失败,所以我认为我的机器和仿真器可能存在配置问题,但是我不确定是什么。

您知道什么可能导致此问题吗?

7 个答案:

答案 0 :(得分:1)

我想到的唯一可能性就是网络连接:

  1. 确保您的仿真器具有活动的网络连接。
  2. 我可以看到您的wifi交叉很小,这是什么原因?
  3. 还要检查您的模拟器是否具有任何代理设置或其他功能?

答案 1 :(得分:1)

根据 Amir's 的回答,我删除了我的 Android 虚拟设备并安装了一个更新的虚拟设备,但仍然出现空白屏幕。

我读到有人通过清除手机缓存使其工作。最后我尝试了,它清除了手机缓存并清除了与应用程序相关的手机数据。这没什么意思,因为我已经安装了一个新的虚拟设备,所以应该没有缓存的情况,

<块引用> <块引用>

简而言之通过清除模拟器中的应用程序缓存,我能够重新使用应用程序

答案 2 :(得分:0)

由于@Navneet Kumar,我发现几周前我曾尝试在模拟器上设置Charles Proxy。我以为该设置仅限于该一台模拟设备,但是显然该设置在所有设备之间共享。 恢复这些设置,一切正常(https://medium.com/@daptronic/the-android-emulator-and-charles-proxy-a-love-story-595c23484e02)。

谢谢

答案 3 :(得分:0)

这是一个错误,您可以跟踪this issue以获得更多信息。他们在那里提到的解决此问题的唯一解决方案是在avd中创建另一个仿真器设备。


更新

另一种解决方案是由android studio运行该应用程序(通过在android studio中打开android文件夹)并运行它以查看错误!

答案 4 :(得分:0)

我刚刚关闭了该应用,并从模拟器中将其卸载,然后运行react-native run-android,现在一切正常

答案 5 :(得分:0)

  1. 只需转到命令提示符类型Ipconfig。
  2. 打开用于Android模拟器的扩展控件->“设置代理”
  3. 在“模拟器代理设置”中检查并粘贴IP地址,然后将端口号设置为例如8888
  4. 重新启动应用程序。 Check Image For Reference

答案 6 :(得分:0)

当我开始一个新项目并将组件从旧项目转移到其中时,我可以看到我的应用程序正在通过 console.log 运行,但留下一个空白屏幕。

最终我发现根组件 D'OH 需要 style={{flex: 1}}