React native 用“响应本地APK崩溃”;“未知”;错误

React native 用“响应本地APK崩溃”;“未知”;错误,react-native,babeljs,bundler,metro-bundler,React Native,Babeljs,Bundler,Metro Bundler,我的react本机开发环境在Windows 7上;直到昨天,工作正常,但APK在加载包后突然报告错误 错误消息: Unknown run NativeRunnable.java handleCallback Handler.java:873 dispatchMessage Handler.java:99 dispatchMessage MessageQueueThreadHandler.java:29 loop Looper.java:193 run

我的react本机开发环境在Windows 7上;直到昨天,工作正常,但APK在加载包后突然报告错误

错误消息:

Unknown
run
    NativeRunnable.java
handleCallback
    Handler.java:873
dispatchMessage
    Handler.java:99
dispatchMessage
    MessageQueueThreadHandler.java:29
loop
    Looper.java:193
run
    MessageQueueThreadImpl.java:232
run
    Thread.java:764
我用谷歌搜索错误,但运气不好。我尝试使用
npm start--reset cache
清除缓存,但错误仍然存在。 我找到并尝试了,但他们的解决方案也不起作用

错误日志:

06-16 14:30:16.144  5885  6735 E unknown:ReactNative: Exception in native call
06-16 14:30:16.144  5885  6735 E unknown:ReactNative: com.facebook.jni.UnknownCppException: Unknown
06-16 14:30:16.144  5885  6735 E unknown:ReactNative:   at com.facebook.react.bridge.queue.NativeRunnable.run(Native Method)
06-16 14:30:16.144  5885  6735 E unknown:ReactNative:   at android.os.Handler.handleCallback(Handler.java:873)
06-16 14:30:16.144  5885  6735 E unknown:ReactNative:   at android.os.Handler.dispatchMessage(Handler.java:99)
06-16 14:30:16.144  5885  6735 E unknown:ReactNative:   at com.facebook.react.bridge.queue.MessageQueueThreadHandler.dispatchMessage(MessageQueueThreadHandler.java:29)
06-16 14:30:16.144  5885  6735 E unknown:ReactNative:   at android.os.Looper.loop(Looper.java:193)
06-16 14:30:16.144  5885  6735 E unknown:ReactNative:   at com.facebook.react.bridge.queue.MessageQueueThreadImpl$4.run(MessageQueueThreadImpl.java:232)
06-16 14:30:16.144  5885  6735 E unknown:ReactNative:   at java.lang.Thread.run(Thread.java:764)
06-16 14:30:16.152  5885  6735 E ReactNativeJNI: Attempting to call JS function on a bad application bundle: RCTDeviceEventEmitter.emit()
06-16 14:30:16.155  5885  6735 E unknown:ReactNative: Exception in native call
06-16 14:30:16.155  5885  6735 E unknown:ReactNative: java.lang.RuntimeException: Attempting to call JS function on a bad application bundle: RCTDeviceEventEmitter.emit()
06-16 14:30:16.155  5885  6735 E unknown:ReactNative:   at com.facebook.react.bridge.queue.NativeRunnable.run(Native Method)
06-16 14:30:16.155  5885  6735 E unknown:ReactNative:   at android.os.Handler.handleCallback(Handler.java:873)
06-16 14:30:16.155  5885  6735 E unknown:ReactNative:   at android.os.Handler.dispatchMessage(Handler.java:99)
06-16 14:30:16.155  5885  6735 E unknown:ReactNative:   at com.facebook.react.bridge.queue.MessageQueueThreadHandler.dispatchMessage(MessageQueueThreadHandler.java:29)
06-16 14:30:16.155  5885  6735 E unknown:ReactNative:   at android.os.Looper.loop(Looper.java:193)
06-16 14:30:16.155  5885  6735 E unknown:ReactNative:   at com.facebook.react.bridge.queue.MessageQueueThreadImpl$4.run(MessageQueueThreadImpl.java:232)
06-16 14:30:16.155  5885  6735 E unknown:ReactNative:   at java.lang.Thread.run(Thread.java:764)
06-16 14:30:16.155  5885  6735 E ReactNativeJNI: Attempting to call JS function on a bad application bundle: AppRegistry.runApplication()
06-16 14:30:16.156  5885  6735 E unknown:ReactNative: Exception in native call
06-16 14:30:16.156  5885  6735 E unknown:ReactNative: java.lang.RuntimeException: Attempting to call JS function on a bad application bundle: AppRegistry.runApplication()
06-16 14:30:16.156  5885  6735 E unknown:ReactNative:   at com.facebook.react.bridge.queue.NativeRunnable.run(Native Method)
06-16 14:30:16.156  5885  6735 E unknown:ReactNative:   at android.os.Handler.handleCallback(Handler.java:873)
06-16 14:30:16.156  5885  6735 E unknown:ReactNative:   at android.os.Handler.dispatchMessage(Handler.java:99)
06-16 14:30:16.156  5885  6735 E unknown:ReactNative:   at com.facebook.react.bridge.queue.MessageQueueThreadHandler.dispatchMessage(MessageQueueThreadHandler.java:29)
06-16 14:30:16.156  5885  6735 E unknown:ReactNative:   at android.os.Looper.loop(Looper.java:193)
06-16 14:30:16.156  5885  6735 E unknown:ReactNative:   at com.facebook.react.bridge.queue.MessageQueueThreadImpl$4.run(MessageQueueThreadImpl.java:232)
06-16 14:30:16.156  5885  6735 E unknown:ReactNative:   at java.lang.Thread.run(Thread.java:764)
06-16 14:30:16.165  5885  5885 D ReactNative: CatalystInstanceImpl.destroy() start
06-16 14:30:16.181  1571  1571 D gralloc_ranchu: gralloc_alloc: Creating ashmem region of size 3936256
06-16 14:30:16.187  1571  1571 D gralloc_ranchu: gralloc_alloc: Creating ashmem region of size 3936256
06-16 14:30:16.189  5885  6734 D ReactNative: CatalystInstanceImpl.destroy() end
06-16 14:30:16.193  1571  1571 D gralloc_ranchu: gralloc_alloc: Creating ashmem region of size 3936256
06-16 14:30:16.224  5885  5885 D ReactNative: CatalystInstanceImpl.destroy() start
06-16 14:30:16.224  5885  5885 D ReactNative: CatalystInstanceImpl.destroy() start
06-16 14:30:16.233  5885  5885 W unknown:ReactNative: Tried to enqueue runnable on already finished thread: 'js... dropping Runnable.
06-16 14:30:16.233  5885  5885 W MessageQueue: Handler (com.facebook.react.bridge.queue.MessageQueueThreadHandler) {ef3c15} sending message to a Handler on a dead thread
06-16 14:30:16.233  5885  5885 W MessageQueue: java.lang.IllegalStateException: Handler (com.facebook.react.bridge.queue.MessageQueueThreadHandler) {ef3c15} sending message to a Handler on a dead thread
06-16 14:30:16.233  5885  5885 W MessageQueue:  at android.os.MessageQueue.enqueueMessage(MessageQueue.java:546)
06-16 14:30:16.233  5885  5885 W MessageQueue:  at android.os.Handler.enqueueMessage(Handler.java:745)
06-16 14:30:16.233  5885  5885 W MessageQueue:  at android.os.Handler.sendMessageAtTime(Handler.java:697)
06-16 14:30:16.233  5885  5885 W MessageQueue:  at android.os.Handler.sendMessageDelayed(Handler.java:667)
06-16 14:30:16.233  5885  5885 W MessageQueue:  at android.os.Handler.post(Handler.java:395)
06-16 14:30:16.233  5885  5885 W MessageQueue:  at com.facebook.react.bridge.queue.MessageQueueThreadImpl.runOnQueue(MessageQueueThreadImpl.java:70)
06-16 14:30:16.233  5885  5885 W MessageQueue:  at com.facebook.react.bridge.ReactContext.runOnJSQueueThread(ReactContext.java:306)
06-16 14:30:16.233  5885  5885 W MessageQueue:  at com.facebook.react.uimanager.events.EventDispatcher$ScheduleDispatchFrameCallback.doFrame(EventDispatcher.java:302)
06-16 14:30:16.233  5885  5885 W MessageQueue:  at com.facebook.react.modules.core.ReactChoreographer$ReactChoreographerDispatcher.doFrame(ReactChoreographer.java:166)
06-16 14:30:16.233  5885  5885 W MessageQueue:  at com.facebook.react.modules.core.ChoreographerCompat$FrameCallback$1.doFrame(ChoreographerCompat.java:84)
06-16 14:30:16.233  5885  5885 W MessageQueue:  at android.view.Choreographer$CallbackRecord.run(Choreographer.java:947)
06-16 14:30:16.233  5885  5885 W MessageQueue:  at android.view.Choreographer.doCallbacks(Choreographer.java:761)
06-16 14:30:16.233  5885  5885 W MessageQueue:  at android.view.Choreographer.doFrame(Choreographer.java:693)
06-16 14:30:16.233  5885  5885 W MessageQueue:  at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:935)
06-16 14:30:16.233  5885  5885 W MessageQueue:  at android.os.Handler.handleCallback(Handler.java:873)
06-16 14:30:16.233  5885  5885 W MessageQueue:  at android.os.Handler.dispatchMessage(Handler.java:99)
06-16 14:30:16.233  5885  5885 W MessageQueue:  at android.os.Looper.loop(Looper.java:193)
06-16 14:30:16.233  5885  5885 W MessageQueue:  at android.app.ActivityThread.main(ActivityThread.java:6669)
06-16 14:30:16.233  5885  5885 W MessageQueue:  at java.lang.reflect.Method.invoke(Native Method)
06-16 14:30:16.233  5885  5885 W MessageQueue:  at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
06-16 14:30:16.233  5885  5885 W MessageQueue:  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)
06-16 14:30:16.251  2042  2042 I GoogleInputMethod: onFinishInput() : Dummy InputConnection bound
06-16 14:30:16.252  2042  2042 I GoogleInputMethod: onStartInput() : Dummy InputConnection bound
06-16 14:30:16.255  5885  5902 D EGL_emulation: eglMakeCurrent: 0xe5dc78a0: ver 2 0 (tinfo 0xe7055d70)

编辑:我已从上面的日志中排除与修复错误时相同的部分。

调试后;禁用
@babel/plugin转换箭头功能
插件(版本
7.2.0
),然后清除缓存(如中所建议)为我修复了它:

步骤:
  • 禁用
    @babel/plugin转换箭头函数
    插件,例如,我只是在
    babel.config.js
    文件中对其进行了注释,如下所示:

    module.exports={
    预设:[“模块:地铁反应本地巴别塔预设”],
    插件:[
    ['@babel/plugin-proposal-decorators',{decoratorsBeforeExport:false}],
    //下面的插件无法处理我们的一些箭头功能,
    //这将导致应用程序启动后出现“未知”错误。
    // ```
    //['@babel/plugin转换箭头函数',{spec:true}]
    // ```
    ]
    };
    
  • 当打包机已经运行时,使用process manager关闭和/或终止它

  • 对于
    react native
    init
    方法(无
    expo
    ),运行:

  • (使用
    expo cli
    的用户应运行
    expo start-c
    而不是上述程序)

    上述命令对我来说等于删除
    %temp%/metro缓存
    目录

    但是,按照建议删除
    ~/.babel.json
    文件(在Windows
    %userProfile%/.babel.json
    文件上)也无妨,我的意思是,我已经测试过,上面提到的命令没有删除和/或更改
    .babel.json
    文件


    修复后的Logcat:

    06-16 14:55:48.670  5885  6650 D ReactNative: CatalystInstanceImpl.destroy() end
    06-16 14:55:49.374  5885  6652 W ReactNativeJS: Require cycle: node_modules\react-native-reanimated\src\utils.js -> node_modules\react-native-reanimated\src\core\AnimatedBlock.js -> node_modules\react-native-reanimated\src\utils.js
    06-16 14:55:49.374  5885  6652 W ReactNativeJS:
    06-16 14:55:49.374  5885  6652 W ReactNativeJS: Require cycles are allowed, butcan result in uninitialized values. Consider refactoring to remove the need fora cycle.
    06-16 14:55:49.374  5885  6652 W ReactNativeJS: Require cycle: node_modules\react-native-reanimated\src\base.js -> node_modules\react-native-reanimated\src\core\AnimatedCond.js -> node_modules\react-native-reanimated\src\utils.js -> node_modules\react-native-reanimated\src\core\AnimatedValue.js -> node_modules\react-native-reanimated\src\base.js
    06-16 14:55:49.374  5885  6652 W ReactNativeJS:
    06-16 14:55:49.374  5885  6652 W ReactNativeJS: Require cycles are allowed, butcan result in uninitialized values. Consider refactoring to remove the need fora cycle.
    06-16 14:55:49.374  5885  6652 W ReactNativeJS: Require cycle: node_modules\react-native-reanimated\src\utils.js -> node_modules\react-native-reanimated\src\core\AnimatedValue.js -> node_modules\react-native-reanimated\src\utils.js
    06-16 14:55:49.374  5885  6652 W ReactNativeJS:
    06-16 14:55:49.374  5885  6652 W ReactNativeJS: Require cycles are allowed, butcan result in uninitialized values. Consider refactoring to remove the need fora cycle.
    06-16 14:55:49.375  5885  6652 W ReactNativeJS: Require cycle: node_modules\react-native-reanimated\src\core\AnimatedValue.js -> node_modules\react-native-reanimated\src\derived\evaluateOnce.js -> node_modules\react-native-reanimated\src\core\AnimatedValue.js
    06-16 14:55:49.375  5885  6652 W ReactNativeJS:
    06-16 14:55:49.375  5885  6652 W ReactNativeJS: Require cycles are allowed, butcan result in uninitialized values. Consider refactoring to remove the need fora cycle.
    06-16 14:55:49.375  5885  6652 W ReactNativeJS: Require cycle: node_modules\react-native-reanimated\src\base.js -> node_modules\react-native-reanimated\src\core\AnimatedCond.js -> node_modules\react-native-reanimated\src\utils.js -> node_modules\react-native-reanimated\src\core\AnimatedValue.js -> node_modules\react-native-reanimated\src\derived\evaluateOnce.js -> node_modules\react-native-reanimated\src\base.js
    06-16 14:55:49.375  5885  6652 W ReactNativeJS:
    06-16 14:55:49.375  5885  6652 W ReactNativeJS: Require cycles are allowed, butcan result in uninitialized values. Consider refactoring to remove the need fora cycle.
    06-16 14:55:49.375  5885  6652 W ReactNativeJS: Require cycle: node_modules\react-native-reanimated\src\base.js -> node_modules\react-native-reanimated\src\core\AnimatedCond.js -> node_modules\react-native-reanimated\src\utils.js -> node_modules\react-native-reanimated\src\core\AnimatedValue.js -> node_modules\react-native-reanimated\src\derived\interpolate.js -> node_modules\react-native-reanimated\src\base.js
    06-16 14:55:49.375  5885  6652 W ReactNativeJS:
    06-16 14:55:49.375  5885  6652 W ReactNativeJS: Require cycles are allowed, butcan result in uninitialized values. Consider refactoring to remove the need fora cycle.
    06-16 14:55:49.478  5885  6652 I ReactNativeJS: Running application "StormHoundsApp" with appParams: {"rootTag":201}. __DEV__ === true, development-level warning are ON, performance optimizations are OFF
    06-16 14:55:49.749  5885  5885 I ReactNative: [GESTURE HANDLER] Initialize gesture handler for root view com.swmansion.gesturehandler.react.RNGestureHandlerEnabledRootView{32e1596 V.E...... ......ID 0,0-768,1136 #c9}
    06-16 14:55:51.469  1831  1854 W audio_hw_generic: Not supplying enough data toHAL, expected position 5387280 , only wrote 5234400
    06-16 14:55:52.561  1912  2108 I GnssLocationProvider: WakeLock acquired by sendMessage(REPORT_SV_STATUS, 0, com.android.server.location.GnssLocationProvider$SvStatusInfo@b89f9d4)
    06-16 14:55:52.562  1912  1926 I GnssLocationProvider: WakeLock released by handleMessage(REPORT_SV_STATUS, 0, com.android.server.location.GnssLocationProvider$SvStatusInfo@b89f9d4)
    06-16 14:55:52.566  2537  2951 W ctxmgr  : [AclManager]No 2 for (accnt=account#-517948760#, com.google.android.gms(10015):IndoorOutdoorProducer, vrsn=13280000,0, 3pPkg = null ,  3pMdlId = null ,  pid = 2537). Was: 3 for 57, account#-517948760#
    
    为了获得更清晰的日志,我从上面排除了与错误出现时相同的部分


    我没有接受这个答案,只是希望有一个解决方案,但现在我会接受我自己的答案,因为解决这个问题似乎是唯一的办法???q=(-)我之所以禁用这个插件,是因为
    react native
    无法显示一个关于它不喜欢什么的明确错误!!(很好,我现在切换到了
    flatter
    ——不再浪费时间和令人困惑的错误了)。
    06-16 14:55:48.670  5885  6650 D ReactNative: CatalystInstanceImpl.destroy() end
    06-16 14:55:49.374  5885  6652 W ReactNativeJS: Require cycle: node_modules\react-native-reanimated\src\utils.js -> node_modules\react-native-reanimated\src\core\AnimatedBlock.js -> node_modules\react-native-reanimated\src\utils.js
    06-16 14:55:49.374  5885  6652 W ReactNativeJS:
    06-16 14:55:49.374  5885  6652 W ReactNativeJS: Require cycles are allowed, butcan result in uninitialized values. Consider refactoring to remove the need fora cycle.
    06-16 14:55:49.374  5885  6652 W ReactNativeJS: Require cycle: node_modules\react-native-reanimated\src\base.js -> node_modules\react-native-reanimated\src\core\AnimatedCond.js -> node_modules\react-native-reanimated\src\utils.js -> node_modules\react-native-reanimated\src\core\AnimatedValue.js -> node_modules\react-native-reanimated\src\base.js
    06-16 14:55:49.374  5885  6652 W ReactNativeJS:
    06-16 14:55:49.374  5885  6652 W ReactNativeJS: Require cycles are allowed, butcan result in uninitialized values. Consider refactoring to remove the need fora cycle.
    06-16 14:55:49.374  5885  6652 W ReactNativeJS: Require cycle: node_modules\react-native-reanimated\src\utils.js -> node_modules\react-native-reanimated\src\core\AnimatedValue.js -> node_modules\react-native-reanimated\src\utils.js
    06-16 14:55:49.374  5885  6652 W ReactNativeJS:
    06-16 14:55:49.374  5885  6652 W ReactNativeJS: Require cycles are allowed, butcan result in uninitialized values. Consider refactoring to remove the need fora cycle.
    06-16 14:55:49.375  5885  6652 W ReactNativeJS: Require cycle: node_modules\react-native-reanimated\src\core\AnimatedValue.js -> node_modules\react-native-reanimated\src\derived\evaluateOnce.js -> node_modules\react-native-reanimated\src\core\AnimatedValue.js
    06-16 14:55:49.375  5885  6652 W ReactNativeJS:
    06-16 14:55:49.375  5885  6652 W ReactNativeJS: Require cycles are allowed, butcan result in uninitialized values. Consider refactoring to remove the need fora cycle.
    06-16 14:55:49.375  5885  6652 W ReactNativeJS: Require cycle: node_modules\react-native-reanimated\src\base.js -> node_modules\react-native-reanimated\src\core\AnimatedCond.js -> node_modules\react-native-reanimated\src\utils.js -> node_modules\react-native-reanimated\src\core\AnimatedValue.js -> node_modules\react-native-reanimated\src\derived\evaluateOnce.js -> node_modules\react-native-reanimated\src\base.js
    06-16 14:55:49.375  5885  6652 W ReactNativeJS:
    06-16 14:55:49.375  5885  6652 W ReactNativeJS: Require cycles are allowed, butcan result in uninitialized values. Consider refactoring to remove the need fora cycle.
    06-16 14:55:49.375  5885  6652 W ReactNativeJS: Require cycle: node_modules\react-native-reanimated\src\base.js -> node_modules\react-native-reanimated\src\core\AnimatedCond.js -> node_modules\react-native-reanimated\src\utils.js -> node_modules\react-native-reanimated\src\core\AnimatedValue.js -> node_modules\react-native-reanimated\src\derived\interpolate.js -> node_modules\react-native-reanimated\src\base.js
    06-16 14:55:49.375  5885  6652 W ReactNativeJS:
    06-16 14:55:49.375  5885  6652 W ReactNativeJS: Require cycles are allowed, butcan result in uninitialized values. Consider refactoring to remove the need fora cycle.
    06-16 14:55:49.478  5885  6652 I ReactNativeJS: Running application "StormHoundsApp" with appParams: {"rootTag":201}. __DEV__ === true, development-level warning are ON, performance optimizations are OFF
    06-16 14:55:49.749  5885  5885 I ReactNative: [GESTURE HANDLER] Initialize gesture handler for root view com.swmansion.gesturehandler.react.RNGestureHandlerEnabledRootView{32e1596 V.E...... ......ID 0,0-768,1136 #c9}
    06-16 14:55:51.469  1831  1854 W audio_hw_generic: Not supplying enough data toHAL, expected position 5387280 , only wrote 5234400
    06-16 14:55:52.561  1912  2108 I GnssLocationProvider: WakeLock acquired by sendMessage(REPORT_SV_STATUS, 0, com.android.server.location.GnssLocationProvider$SvStatusInfo@b89f9d4)
    06-16 14:55:52.562  1912  1926 I GnssLocationProvider: WakeLock released by handleMessage(REPORT_SV_STATUS, 0, com.android.server.location.GnssLocationProvider$SvStatusInfo@b89f9d4)
    06-16 14:55:52.566  2537  2951 W ctxmgr  : [AclManager]No 2 for (accnt=account#-517948760#, com.google.android.gms(10015):IndoorOutdoorProducer, vrsn=13280000,0, 3pPkg = null ,  3pMdlId = null ,  pid = 2537). Was: 3 for 57, account#-517948760#