android - React Native应用程序在Android上启动时崩溃:找不到类 “com.facebook.react.devsupport.DevSupportManagerImpl”

标签 android react-native crash classnotfoundexception

我正在使用React Native v 0.62.2,并且正在尝试使我的项目也在Android上运行。到目前为止,我一直专注于iOS的开发,因此从未运行过Android应用程序。现在我想运行android应用程序,但是在启动屏幕显示以下堆栈跟踪后,该应用程序在启动时崩溃:

    java.lang.RuntimeException: Unable to create application com.myapp.MainApplication: java.lang.RuntimeException: Requested enabled DevSupportManager, but DevSupportManagerImpl class was not found or could not be created
        at android.app.ActivityThread.handleBindApplication(ActivityThread.java:6612)
        at android.app.ActivityThread.access$1300(ActivityThread.java:233)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1896)
        at android.os.Handler.dispatchMessage(Handler.java:106)
        at android.os.Looper.loop(Looper.java:223)
        at android.app.ActivityThread.main(ActivityThread.java:7523)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:941)
     Caused by: java.lang.RuntimeException: Requested enabled DevSupportManager, but DevSupportManagerImpl class was not found or could not be created
        at com.facebook.react.devsupport.a.a(:90)
        at com.facebook.react.q.<init>(:238)
        at com.facebook.react.r.b(:281)
        at com.facebook.react.t.a(:87)
        at com.facebook.react.t.h(:39)
        at com.myapp.MainApplication.onCreate(:48)
        at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1192)
        at android.app.ActivityThread.handleBindApplication(ActivityThread.java:6607)
        at android.app.ActivityThread.access$1300(ActivityThread.java:233) 
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1896) 
        at android.os.Handler.dispatchMessage(Handler.java:106) 
        at android.os.Looper.loop(Looper.java:223) 
        at android.app.ActivityThread.main(ActivityThread.java:7523) 
        at java.lang.reflect.Method.invoke(Native Method) 
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592) 
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:941) 
     Caused by: java.lang.ClassNotFoundException: com.facebook.react.devsupport.DevSupportManagerImpl
        at java.lang.Class.classForName(Native Method)
        at java.lang.Class.forName(Class.java:454)
        at java.lang.Class.forName(Class.java:379)
        at com.facebook.react.devsupport.a.a(:68)
        at com.facebook.react.q.<init>(:238) 
        at com.facebook.react.r.b(:281) 
        at com.facebook.react.t.a(:87) 
        at com.facebook.react.t.h(:39) 
        at com.myapp.MainApplication.onCreate(:48) 
        at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1192) 
        at android.app.ActivityThread.handleBindApplication(ActivityThread.java:6607) 
        at android.app.ActivityThread.access$1300(ActivityThread.java:233) 
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1896) 
        at android.os.Handler.dispatchMessage(Handler.java:106) 
        at android.os.Looper.loop(Looper.java:223) 
        at android.app.ActivityThread.main(ActivityThread.java:7523) 
        at java.lang.reflect.Method.invoke(Native Method) 
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592) 
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:941) 
     Caused by: java.lang.ClassNotFoundException: Didn't find class "com.facebook.react.devsupport.DevSupportManagerImpl" on path: DexPathList[[zip file "/data/app/~~WocKG3K03wTNVqsJq3z5Xg==/com.myapp-F972FEHz8FF4xF-BTG7qlg==/base.apk"],nativeLibraryDirectories=[/data/app/~~WocKG3K03wTNVqsJq3z5Xg==/com.myapp-F972FEHz8FF4xF-BTG7qlg==/lib/x86, /data/app/~~WocKG3K03wTNVqsJq3z5Xg==/com.myapp-F972FEHz8FF4xF-BTG7qlg==/base.apk!/lib/x86, /system/lib, /system_ext/lib, /product/lib]]
        at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:207)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:379)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
        at java.lang.Class.classForName(Native Method) 
        at java.lang.Class.forName(Class.java:454) 
        at java.lang.Class.forName(Class.java:379) 
        at com.facebook.react.devsupport.a.a(:68) 
        at com.facebook.react.q.<init>(:238) 
        at com.facebook.react.r.b(:281) 
        at com.facebook.react.t.a(:87) 
        at com.facebook.react.t.h(:39) 
        at com.myapp.MainApplication.onCreate(:48) 
        at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1192) 
        at android.app.ActivityThread.handleBindApplication(ActivityThread.java:6607) 
        at android.app.ActivityThread.access$1300(ActivityThread.java:233) 
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1896) 
        at android.os.Handler.dispatchMessage(Handler.java:106) 
        at android.os.Looper.loop(Looper.java:223) 
        at android.app.ActivityThread.main(ActivityThread.java:7523) 
        at java.lang.reflect.Method.invoke(Native Method) 
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592) 
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:941) 
我在网上搜索了解决方案或至少有提示,但不幸的是没有找到任何解决方案,甚至没有任何解决此问题的想法。
有谁有想法吗?另外,如果您需要任何其他信息才能回答问题,请告诉我。
非常感谢!

最佳答案

对于所有也在这个问题上苦苦挣扎的人-经过长时间的研究加上反复试验,我终于把它解决了。
看来此问题实际上与OK HTTP有关。使我开始运行的步骤如下:

  • 启用MultiDex,但还要继续关注AndroidX解决方案(因为我使用的是已经利用AndroidX的最新版React Native),如以下答案所述:
    https://stackoverflow.com/a/56875424/9055450
  • 请按照以下注释中给出的说明添加ProGuard文件:https://github.com/facebook/react-native/issues/9043#issuecomment-298832659
  • 关于android - React Native应用程序在Android上启动时崩溃:找不到类 “com.facebook.react.devsupport.DevSupportManagerImpl”,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63539691/

    相关文章:

    android - 在android : 4. 3的MediaMuxer或ffmpeg中的视频上添加水印位图

    react-native - 如何使用 react native Keyboard.scheduleLayoutAnimation(event) 方法?

    javascript - 使用单个 handleInputChange 方法来处理多个输入字段 (React)

    iphone - 按下按钮时在模拟器中崩溃

    objective-c - Objective-C应用程序因 'unrecognized selector sent '而崩溃

    android - java.lang.IllegalStateException : TimerTask is scheduled already: Rationally using of Timer and TimerTask in Android 错误

    安卓导出应用失败

    android - 广播接收器中接收调用的优先级

    ios - 在 native Swiper 中动态呈现内容

    ios - SIGABRT NSCFNumber 长度