应用程式因错误INVALID_STATE_ERR而当机

时间:2019-01-09 14:26:16

标签: android sockets react-native react-native-mqtt

我正在使用本机反应。我在崩溃解析器上崩溃,错误为 INVALID_STATE_ERR 。我正在使用FireBase Crashlytics。我还使用MQTT客户端建立Web套接字连接。

我无法找出导致应用程序崩溃的原因。是由于MQTT WebSockets还是由于JavaScript线程上发生错误?我也没有从堆栈跟踪中获取任何相关消息。 我在下面粘贴我的堆栈跟踪。

    Fatal Exception: com.facebook.react.common.JavascriptException: INVALID_STATE_ERR, stack:
    value@79:1340
    _socket_send@557:21101
    _on_socket_open@557:16408
    <unknown>@557:628
    value@63:1501
    <unknown>@79:4566
    value@32:1363
    value@18:3559
    <unknown>@18:1044
    value@18:2986
    value@18:1016

   at com.facebook.react.modules.core.ExceptionsManagerModule.showOrThrowError(ExceptionsManagerModule.java:54)
   at com.facebook.react.modules.core.ExceptionsManagerModule.reportFatalException(ExceptionsManagerModule.java:38)
   at java.lang.reflect.Method.invoke(Method.java)
   at com.facebook.react.bridge.JavaMethodWrapper.invoke(JavaMethodWrapper.java:372)
   at com.facebook.react.bridge.JavaModuleWrapper.invoke(JavaModuleWrapper.java:160)
   at com.facebook.react.bridge.queue.NativeRunnable.run(NativeRunnable.java)
   at android.os.Handler.handleCallback(Handler.java:739)
   at android.os.Handler.dispatchMessage(Handler.java:95)
   at com.facebook.react.bridge.queue.MessageQueueThreadHandler.dispatchMessage(MessageQueueThreadHandler.java:29)
   at android.os.Looper.loop(Looper.java:148)
   at com.facebook.react.bridge.queue.MessageQueueThreadImpl$3.run(MessageQueueThreadImpl.java:192)
   at java.lang.Thread.run(Thread.java:818)

我可以获取更多解决此问题的见识吗?

1 个答案:

答案 0 :(得分:0)

根据this Wix GitHub issue,这是由以下原因引起的:

  

旧手机上的观看次数过多。 RNN添加了一些嵌套视图,但无论如何看来我可能有太多。

该问题链接到a pull request on React Native's GitHub repo,该问题现在应合并到其中。它提到该问题是在API 21之前的版本上的,所以我建议您在以后的API上尝试您的代码,看看它是否仍然存在。

无论哪种方式,减少视图(或请求,在这种情况下是?)的数量都是一个不错的第一步。