Hello,
I have encountered a problem while using react-native-screens combine with react-navigation :
sometimes the app crash when I launched it (tested on Android only).
This is the error catch in Logcat in Android Studio :
Process: com.XXXX, PID: 30449
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.XXXX/com.XXXX.MainActivity}: androidx.fragment.app.Fragment$InstantiationException: Unable to instantiate fragment com.swmansion.rnscreens.Screen$ScreenFragment: calling Fragment constructor caused an exception
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2825)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2900)
at android.app.ActivityThread.-wrap11(Unknown Source:0)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1601)
at android.os.Handler.dispatchMessage(Handler.java:105)
at android.os.Looper.loop(Looper.java:251)
at android.app.ActivityThread.main(ActivityThread.java:6589)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:767)
Caused by: androidx.fragment.app.Fragment$InstantiationException: Unable to instantiate fragment com.swmansion.rnscreens.Screen$ScreenFragment: calling Fragment constructor caused an exception
at androidx.fragment.app.Fragment.instantiate(Fragment.java:532)
at androidx.fragment.app.FragmentContainer.instantiate(FragmentContainer.java:57)
at androidx.fragment.app.FragmentManagerImpl$6.instantiate(FragmentManagerImpl.java:2848)
at androidx.fragment.app.FragmentState.instantiate(FragmentState.java:85)
at androidx.fragment.app.FragmentManagerImpl.restoreSaveState(FragmentManagerImpl.java:2485)
at androidx.fragment.app.FragmentController.restoreSaveState(FragmentController.java:195)
at androidx.fragment.app.FragmentActivity.onCreate(FragmentActivity.java:288)
at androidx.appcompat.app.AppCompatActivity.onCreate(AppCompatActivity.java:106)
at com.facebook.react.ReactActivity.onCreate(ReactActivity.java:51)
at com.XXXX.MainActivity.onCreate(MainActivity.java:14)
at android.app.Activity.performCreate(Activity.java:6975)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1214)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2778)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2900)
at android.app.ActivityThread.-wrap11(Unknown Source:0)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1601)
at android.os.Handler.dispatchMessage(Handler.java:105)
at android.os.Looper.loop(Looper.java:251)
at android.app.ActivityThread.main(ActivityThread.java:6589)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:767)
Caused by: java.lang.reflect.InvocationTargetException
at java.lang.reflect.Constructor.newInstance0(Native Method)
at java.lang.reflect.Constructor.newInstance(Constructor.java:334)
at androidx.fragment.app.Fragment.instantiate(Fragment.java:514)
at androidx.fragment.app.FragmentContainer.instantiate(FragmentContainer.java:57)
at androidx.fragment.app.FragmentManagerImpl$6.instantiate(FragmentManagerImpl.java:2848)
at androidx.fragment.app.FragmentState.instantiate(FragmentState.java:85)
at androidx.fragment.app.FragmentManagerImpl.restoreSaveState(FragmentManagerImpl.java:2485)
at androidx.fragment.app.FragmentController.restoreSaveState(FragmentController.java:195)
at androidx.fragment.app.FragmentActivity.onCreate(FragmentActivity.java:288)
at androidx.appcompat.app.AppCompatActivity.onCreate(AppCompatActivity.java:106)
at com.facebook.react.ReactActivity.onCreate(ReactActivity.java:51)
at com.XXXX.MainActivity.onCreate(MainActivity.java:14)
at android.app.Activity.performCreate(Activity.java:6975)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1214)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2778)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2900)
at android.app.ActivityThread.-wrap11(Unknown Source:0)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1601)
at android.os.Handler.dispatchMessage(Handler.java:105)
at android.os.Looper.loop(Looper.java:251)
at android.app.ActivityThread.main(ActivityThread.java:6589)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:767)
Caused by: java.lang.IllegalStateException: Screen fragments should never be restored
I didn't have this issue when I was using react-native-screens 1.0.0-alpha.22 with react-navigation 3.11.0 on react-native 0.59.4.
I don't really know what could be the cause of this issue. I didn't have it before upgrading and it only appears sometimes.
My setup:
react-native: 0.60.5
react-navigation: 4.0.7
react-native-screens: 2.0.0-alpha.3
OS: Android 8.0.0
Device: real
I'm getting similar issue after installing react-native-screens. The app still works by removing the package.
Error and Warning log
Unexpected CPU variant for X86 using defaults: x86
java.lang.ClassNotFoundException: com.facebook.flipper.ReactNativeFlipper
at java.lang.Class.classForName(Native Method)
at java.lang.Class.forName(Class.java:453)
at java.lang.Class.forName(Class.java:378)
at com.themealsapp.MainApplication.initializeFlipper(MainApplication.java:61)
at com.themealsapp.MainApplication.onCreate(MainApplication.java:46)
at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1154)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5871)
at android.app.ActivityThread.access$1100(ActivityThread.java:199)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1650)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loop(Looper.java:193)
at android.app.ActivityThread.main(ActivityThread.java:6669)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)
Caused by: java.lang.ClassNotFoundException: Didn't find class "com.facebook.flipper.ReactNativeFlipper" on path: DexPathList[[zip file "/data/app/com.themealsapp-C0f4b-llUrryqdD-GckZoQ==/base.apk"],nativeLibraryDirectories=[/data/app/com.themealsapp-C0f4b-llUrryqdD-GckZoQ==/lib/x86, /data/app/com.themealsapp-C0f4b-llUrryqdD-GckZoQ==/base.apk!/lib/x86, /system/lib]]
at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:134)
at java.lang.ClassLoader.loadClass(ClassLoader.java:379)
at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
... 15 more
Accessing hidden method Landroid/graphics/drawable/Drawable;->getOpticalInsets()Landroid/graphics/Insets; (light greylist, linking)
Accessing hidden field Landroid/graphics/Insets;->left:I (light greylist, linking)
Accessing hidden field Landroid/graphics/Insets;->right:I (light greylist, linking)
Accessing hidden field Landroid/graphics/Insets;->top:I (light greylist, linking)
Accessing hidden field Landroid/graphics/Insets;->bottom:I (light greylist, linking)
Accessing hidden method Ldalvik/system/CloseGuard;->get()Ldalvik/system/CloseGuard; (light greylist, reflection)
Accessing hidden method Ldalvik/system/CloseGuard;->open(Ljava/lang/String;)V (light greylist, reflection)
Accessing hidden method Ldalvik/system/CloseGuard;->warnIfOpen()V (light greylist, reflection)
Accessing hidden method Landroid/view/View;->computeFitSystemWindows(Landroid/graphics/Rect;Landroid/graphics/Rect;)Z (light greylist, reflection)
Accessing hidden method Landroid/view/ViewGroup;->makeOptionalFitsSystemWindows()V (light greylist, reflection)
ReactNative: Packager connection already open, nooping.
Failed to choose config with EGL_SWAP_BEHAVIOR_PRESERVED, retrying without...
Verification of void androidx.appcompat.widget.AppCompatTextHelper.updateTypefaceAndStyle(android.content.Context, androidx.appcompat.widget.TintTypedArray) took 119.172ms
Accessing hidden method Landroid/widget/TextView;->getTextDirectionHeuristic()Landroid/text/TextDirectionHeuristic; (light greylist, linking)
Attempting to set client state on removed layer: Splash Screen com.themealsapp#0
Attempting to destroy on removed layer: Splash Screen com.themealsapp#0
Verification of void androidx.core.content.res.ResourcesCompat$FontCallback$2.<init>(androidx.core.content.res.ResourcesCompat$FontCallback, int) took 112.184ms
ReactNative: Packager connection already open, nooping.
ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.art.ARTGroupViewManager
ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.art.ARTGroupShadowNode
ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.art.ARTShapeViewManager
ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.art.ARTShapeShadowNode
ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.art.ARTTextViewManager
ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.art.ARTTextShadowNode
ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.checkbox.ReactCheckBoxManager
ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.uimanager.LayoutShadowNode
ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.picker.ReactDialogPickerManager
ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.drawer.ReactDrawerLayoutManager
ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.picker.ReactDropdownPickerManager
ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.scroll.ReactHorizontalScrollViewManager
ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.scroll.ReactHorizontalScrollContainerViewManager
ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.progressbar.ReactProgressBarViewManager
ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.progressbar.ProgressBarShadowNode
ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.scroll.ReactScrollViewManager
ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.slider.ReactSliderManager
ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.slider.ReactSliderManager$ReactSliderShadowNode
ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.switchview.ReactSwitchManager
ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.switchview.ReactSwitchManager$ReactSwitchShadowNode
ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.swiperefresh.SwipeRefreshLayoutManager
FATAL EXCEPTION: mqt_native_modules
Process: com.themealsapp, PID: 15671
java.lang.NoClassDefFoundError: Failed resolution of: Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;
at com.facebook.react.shell.MainReactPackage.createViewManagers(MainReactPackage.java:185)
at com.facebook.react.ReactInstanceManager.getOrCreateViewManagers(ReactInstanceManager.java:782)
at com.facebook.react.CoreModulesPackage.createUIManager(CoreModulesPackage.java:184)
at com.facebook.react.CoreModulesPackage.getModule(CoreModulesPackage.java:152)
at com.facebook.react.TurboReactPackage$ModuleHolderProvider.get(TurboReactPackage.java:122)
at com.facebook.react.TurboReactPackage$ModuleHolderProvider.get(TurboReactPackage.java:110)
at com.facebook.react.bridge.ModuleHolder.create(ModuleHolder.java:188)
at com.facebook.react.bridge.ModuleHolder.getModule(ModuleHolder.java:153)
at com.facebook.react.bridge.NativeModuleRegistry.getModule(NativeModuleRegistry.java:148)
at com.facebook.react.bridge.CatalystInstanceImpl.getNativeModule(CatalystInstanceImpl.java:479)
at com.facebook.react.bridge.CatalystInstanceImpl.getNativeModule(CatalystInstanceImpl.java:466)
at com.facebook.react.uimanager.UIManagerHelper.getUIManager(UIManagerHelper.java:31)
at com.facebook.react.ReactInstanceManager.attachRootViewToInstance(ReactInstanceManager.java:1054)
at com.facebook.react.ReactInstanceManager.setupReactContext(ReactInstanceManager.java:1012)
at com.facebook.react.ReactInstanceManager.access$1400(ReactInstanceManager.java:125)
at com.facebook.react.ReactInstanceManager$5$2.run(ReactInstanceManager.java:972)
at android.os.Handler.handleCallback(Handler.java:873)
at android.os.Handler.dispatchMessage(Handler.java:99)
at com.facebook.react.bridge.queue.MessageQueueThreadHandler.dispatchMessage(MessageQueueThreadHandler.java:26)
at android.os.Looper.loop(Looper.java:193)
at com.facebook.react.bridge.queue.MessageQueueThreadImpl$4.run(MessageQueueThreadImpl.java:225)
at java.lang.Thread.run(Thread.java:764)
Caused by: java.lang.ClassNotFoundException: Didn't find class "androidx.swiperefreshlayout.widget.SwipeRefreshLayout" on path: DexPathList[[zip file "/data/app/com.themealsapp-C0f4b-llUrryqdD-GckZoQ==/base.apk"],nativeLibraryDirectories=[/data/app/com.themealsapp-C0f4b-llUrryqdD-GckZoQ==/lib/x86, /data/app/com.themealsapp-C0f4b-llUrryqdD-GckZoQ==/base.apk!/lib/x86, /system/lib]]
at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:134)
at java.lang.ClassLoader.loadClass(ClassLoader.java:379)
at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
... 22 more
Force finishing activity com.themealsapp/.MainActivity
channel '833f741 com.themealsapp/com.themealsapp.MainActivity (server)' ~ Consumer closed input channel or an error occurred. events=0x9
channel '833f741 com.themealsapp/com.themealsapp.MainActivity (server)' ~ Channel is unrecoverably broken and will be disposed!
Attempted to unregister already unregistered input channel '833f741 com.themealsapp/com.themealsapp.MainActivity (server)'
Attempting to set client state on removed layer: com.themealsapp/com.themealsapp.MainActivity#0
Attempting to destroy on removed layer: com.themealsapp/com.themealsapp.MainActivity#0
Android Version : 9 [Emulator]
React : 16.9.0
React-native : 0.61.1
React-navigation : 4.0.10
React-navigation-stack : 1.9.0
React-navigation-tabs : 2.5.5
I'm getting similar issue after installing react-native-screens. The app still works by removing the package.
Error and Warning log
Unexpected CPU variant for X86 using defaults: x86 java.lang.ClassNotFoundException: com.facebook.flipper.ReactNativeFlipper at java.lang.Class.classForName(Native Method) at java.lang.Class.forName(Class.java:453) at java.lang.Class.forName(Class.java:378) at com.themealsapp.MainApplication.initializeFlipper(MainApplication.java:61) at com.themealsapp.MainApplication.onCreate(MainApplication.java:46) at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1154) at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5871) at android.app.ActivityThread.access$1100(ActivityThread.java:199) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1650) at android.os.Handler.dispatchMessage(Handler.java:106) at android.os.Looper.loop(Looper.java:193) at android.app.ActivityThread.main(ActivityThread.java:6669) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858) Caused by: java.lang.ClassNotFoundException: Didn't find class "com.facebook.flipper.ReactNativeFlipper" on path: DexPathList[[zip file "/data/app/com.themealsapp-C0f4b-llUrryqdD-GckZoQ==/base.apk"],nativeLibraryDirectories=[/data/app/com.themealsapp-C0f4b-llUrryqdD-GckZoQ==/lib/x86, /data/app/com.themealsapp-C0f4b-llUrryqdD-GckZoQ==/base.apk!/lib/x86, /system/lib]] at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:134) at java.lang.ClassLoader.loadClass(ClassLoader.java:379) at java.lang.ClassLoader.loadClass(ClassLoader.java:312) ... 15 more Accessing hidden method Landroid/graphics/drawable/Drawable;->getOpticalInsets()Landroid/graphics/Insets; (light greylist, linking) Accessing hidden field Landroid/graphics/Insets;->left:I (light greylist, linking) Accessing hidden field Landroid/graphics/Insets;->right:I (light greylist, linking) Accessing hidden field Landroid/graphics/Insets;->top:I (light greylist, linking) Accessing hidden field Landroid/graphics/Insets;->bottom:I (light greylist, linking) Accessing hidden method Ldalvik/system/CloseGuard;->get()Ldalvik/system/CloseGuard; (light greylist, reflection) Accessing hidden method Ldalvik/system/CloseGuard;->open(Ljava/lang/String;)V (light greylist, reflection) Accessing hidden method Ldalvik/system/CloseGuard;->warnIfOpen()V (light greylist, reflection) Accessing hidden method Landroid/view/View;->computeFitSystemWindows(Landroid/graphics/Rect;Landroid/graphics/Rect;)Z (light greylist, reflection) Accessing hidden method Landroid/view/ViewGroup;->makeOptionalFitsSystemWindows()V (light greylist, reflection) ReactNative: Packager connection already open, nooping. Failed to choose config with EGL_SWAP_BEHAVIOR_PRESERVED, retrying without... Verification of void androidx.appcompat.widget.AppCompatTextHelper.updateTypefaceAndStyle(android.content.Context, androidx.appcompat.widget.TintTypedArray) took 119.172ms Accessing hidden method Landroid/widget/TextView;->getTextDirectionHeuristic()Landroid/text/TextDirectionHeuristic; (light greylist, linking) Attempting to set client state on removed layer: Splash Screen com.themealsapp#0 Attempting to destroy on removed layer: Splash Screen com.themealsapp#0 Verification of void androidx.core.content.res.ResourcesCompat$FontCallback$2.<init>(androidx.core.content.res.ResourcesCompat$FontCallback, int) took 112.184ms ReactNative: Packager connection already open, nooping. ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.art.ARTGroupViewManager ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.art.ARTGroupShadowNode ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.art.ARTShapeViewManager ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.art.ARTShapeShadowNode ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.art.ARTTextViewManager ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.art.ARTTextShadowNode ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.checkbox.ReactCheckBoxManager ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.uimanager.LayoutShadowNode ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.picker.ReactDialogPickerManager ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.drawer.ReactDrawerLayoutManager ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.picker.ReactDropdownPickerManager ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.scroll.ReactHorizontalScrollViewManager ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.scroll.ReactHorizontalScrollContainerViewManager ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.progressbar.ReactProgressBarViewManager ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.progressbar.ProgressBarShadowNode ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.scroll.ReactScrollViewManager ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.slider.ReactSliderManager ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.slider.ReactSliderManager$ReactSliderShadowNode ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.switchview.ReactSwitchManager ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.switchview.ReactSwitchManager$ReactSwitchShadowNode ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.swiperefresh.SwipeRefreshLayoutManager FATAL EXCEPTION: mqt_native_modules Process: com.themealsapp, PID: 15671 java.lang.NoClassDefFoundError: Failed resolution of: Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout; at com.facebook.react.shell.MainReactPackage.createViewManagers(MainReactPackage.java:185) at com.facebook.react.ReactInstanceManager.getOrCreateViewManagers(ReactInstanceManager.java:782) at com.facebook.react.CoreModulesPackage.createUIManager(CoreModulesPackage.java:184) at com.facebook.react.CoreModulesPackage.getModule(CoreModulesPackage.java:152) at com.facebook.react.TurboReactPackage$ModuleHolderProvider.get(TurboReactPackage.java:122) at com.facebook.react.TurboReactPackage$ModuleHolderProvider.get(TurboReactPackage.java:110) at com.facebook.react.bridge.ModuleHolder.create(ModuleHolder.java:188) at com.facebook.react.bridge.ModuleHolder.getModule(ModuleHolder.java:153) at com.facebook.react.bridge.NativeModuleRegistry.getModule(NativeModuleRegistry.java:148) at com.facebook.react.bridge.CatalystInstanceImpl.getNativeModule(CatalystInstanceImpl.java:479) at com.facebook.react.bridge.CatalystInstanceImpl.getNativeModule(CatalystInstanceImpl.java:466) at com.facebook.react.uimanager.UIManagerHelper.getUIManager(UIManagerHelper.java:31) at com.facebook.react.ReactInstanceManager.attachRootViewToInstance(ReactInstanceManager.java:1054) at com.facebook.react.ReactInstanceManager.setupReactContext(ReactInstanceManager.java:1012) at com.facebook.react.ReactInstanceManager.access$1400(ReactInstanceManager.java:125) at com.facebook.react.ReactInstanceManager$5$2.run(ReactInstanceManager.java:972) at android.os.Handler.handleCallback(Handler.java:873) at android.os.Handler.dispatchMessage(Handler.java:99) at com.facebook.react.bridge.queue.MessageQueueThreadHandler.dispatchMessage(MessageQueueThreadHandler.java:26) at android.os.Looper.loop(Looper.java:193) at com.facebook.react.bridge.queue.MessageQueueThreadImpl$4.run(MessageQueueThreadImpl.java:225) at java.lang.Thread.run(Thread.java:764) Caused by: java.lang.ClassNotFoundException: Didn't find class "androidx.swiperefreshlayout.widget.SwipeRefreshLayout" on path: DexPathList[[zip file "/data/app/com.themealsapp-C0f4b-llUrryqdD-GckZoQ==/base.apk"],nativeLibraryDirectories=[/data/app/com.themealsapp-C0f4b-llUrryqdD-GckZoQ==/lib/x86, /data/app/com.themealsapp-C0f4b-llUrryqdD-GckZoQ==/base.apk!/lib/x86, /system/lib]] at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:134) at java.lang.ClassLoader.loadClass(ClassLoader.java:379) at java.lang.ClassLoader.loadClass(ClassLoader.java:312) ... 22 more Force finishing activity com.themealsapp/.MainActivity channel '833f741 com.themealsapp/com.themealsapp.MainActivity (server)' ~ Consumer closed input channel or an error occurred. events=0x9 channel '833f741 com.themealsapp/com.themealsapp.MainActivity (server)' ~ Channel is unrecoverably broken and will be disposed! Attempted to unregister already unregistered input channel '833f741 com.themealsapp/com.themealsapp.MainActivity (server)' Attempting to set client state on removed layer: com.themealsapp/com.themealsapp.MainActivity#0 Attempting to destroy on removed layer: com.themealsapp/com.themealsapp.MainActivity#0Android Version : 9 [Emulator]
React : 16.9.0
React-native : 0.61.1
React-navigation : 4.0.10
React-navigation-stack : 1.9.0
React-navigation-tabs : 2.5.5
I missed something during the Installation.
Fixed the issue by adding below lines to dependencies section in android/app/build.gradle
implementation 'androidx.appcompat:appcompat:1.1.0-rc01'
implementation 'androidx.swiperefreshlayout:swiperefreshlayout:1.1.0-alpha02'
For me, those 2 lines are already added, I followed exactly the installations instructions but still have this issue sometimes.
i've got the same issue, although a different error message. might be relevant.
[10:44:31] E | AndroidRuntime ▶︎ FATAL EXCEPTION: main
│ Process: com.selfcast, PID: 9345
│ java.lang.IllegalArgumentException: No view found for id 0x8b (unknown) for fragment ScreenFragment{2d0e56c (2f55e128-6c9a-425d-bcc7-85623c7b9525) id=0x8b}
│ at androidx.fragment.app.FragmentManagerImpl.moveToState(FragmentManagerImpl.java:875)
│ at androidx.fragment.app.FragmentManagerImpl.addAddedFragments(FragmentManagerImpl.java:2097)
│ at androidx.fragment.app.FragmentManagerImpl.executeOpsTogether(FragmentManagerImpl.java:1871)
│ at androidx.fragment.app.FragmentManagerImpl.removeRedundantOperationsAndExecute(FragmentManagerImpl.java:1827)
│ at androidx.fragment.app.FragmentManagerImpl.execPendingActions(FragmentManagerImpl.java:1727)
│ at androidx.fragment.app.FragmentManagerImpl$2.run(FragmentManagerImpl.java:150)
│ at android.os.Handler.handleCallback(Handler.java:739)
│ at android.os.Handler.dispatchMessage(Handler.java:95)
│ at android.os.Looper.loop(Looper.java:158)
│ at android.app.ActivityThread.main(ActivityThread.java:7225)
│ at java.lang.reflect.Method.invoke(Native Method)
│ at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)
└ at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)
react-native: 0.61.1
react-navigation: 4.0.10
react-navigation-stack: 1.9.0
react-navigation-tabs: 2.5.5
react-navigation-screens: 2.0.0-alpha.3
error only happens if i include useScreens() on App.js
I'm getting similar issue after installing react-native-screens. The app still works by removing the package.
Error and Warning log
Unexpected CPU variant for X86 using defaults: x86 java.lang.ClassNotFoundException: com.facebook.flipper.ReactNativeFlipper at java.lang.Class.classForName(Native Method) at java.lang.Class.forName(Class.java:453) at java.lang.Class.forName(Class.java:378) at com.themealsapp.MainApplication.initializeFlipper(MainApplication.java:61) at com.themealsapp.MainApplication.onCreate(MainApplication.java:46) at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1154) at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5871) at android.app.ActivityThread.access$1100(ActivityThread.java:199) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1650) at android.os.Handler.dispatchMessage(Handler.java:106) at android.os.Looper.loop(Looper.java:193) at android.app.ActivityThread.main(ActivityThread.java:6669) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858) Caused by: java.lang.ClassNotFoundException: Didn't find class "com.facebook.flipper.ReactNativeFlipper" on path: DexPathList[[zip file "/data/app/com.themealsapp-C0f4b-llUrryqdD-GckZoQ==/base.apk"],nativeLibraryDirectories=[/data/app/com.themealsapp-C0f4b-llUrryqdD-GckZoQ==/lib/x86, /data/app/com.themealsapp-C0f4b-llUrryqdD-GckZoQ==/base.apk!/lib/x86, /system/lib]] at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:134) at java.lang.ClassLoader.loadClass(ClassLoader.java:379) at java.lang.ClassLoader.loadClass(ClassLoader.java:312) ... 15 more Accessing hidden method Landroid/graphics/drawable/Drawable;->getOpticalInsets()Landroid/graphics/Insets; (light greylist, linking) Accessing hidden field Landroid/graphics/Insets;->left:I (light greylist, linking) Accessing hidden field Landroid/graphics/Insets;->right:I (light greylist, linking) Accessing hidden field Landroid/graphics/Insets;->top:I (light greylist, linking) Accessing hidden field Landroid/graphics/Insets;->bottom:I (light greylist, linking) Accessing hidden method Ldalvik/system/CloseGuard;->get()Ldalvik/system/CloseGuard; (light greylist, reflection) Accessing hidden method Ldalvik/system/CloseGuard;->open(Ljava/lang/String;)V (light greylist, reflection) Accessing hidden method Ldalvik/system/CloseGuard;->warnIfOpen()V (light greylist, reflection) Accessing hidden method Landroid/view/View;->computeFitSystemWindows(Landroid/graphics/Rect;Landroid/graphics/Rect;)Z (light greylist, reflection) Accessing hidden method Landroid/view/ViewGroup;->makeOptionalFitsSystemWindows()V (light greylist, reflection) ReactNative: Packager connection already open, nooping. Failed to choose config with EGL_SWAP_BEHAVIOR_PRESERVED, retrying without... Verification of void androidx.appcompat.widget.AppCompatTextHelper.updateTypefaceAndStyle(android.content.Context, androidx.appcompat.widget.TintTypedArray) took 119.172ms Accessing hidden method Landroid/widget/TextView;->getTextDirectionHeuristic()Landroid/text/TextDirectionHeuristic; (light greylist, linking) Attempting to set client state on removed layer: Splash Screen com.themealsapp#0 Attempting to destroy on removed layer: Splash Screen com.themealsapp#0 Verification of void androidx.core.content.res.ResourcesCompat$FontCallback$2.<init>(androidx.core.content.res.ResourcesCompat$FontCallback, int) took 112.184ms ReactNative: Packager connection already open, nooping. ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.art.ARTGroupViewManager ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.art.ARTGroupShadowNode ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.art.ARTShapeViewManager ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.art.ARTShapeShadowNode ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.art.ARTTextViewManager ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.art.ARTTextShadowNode ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.checkbox.ReactCheckBoxManager ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.uimanager.LayoutShadowNode ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.picker.ReactDialogPickerManager ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.drawer.ReactDrawerLayoutManager ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.picker.ReactDropdownPickerManager ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.scroll.ReactHorizontalScrollViewManager ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.scroll.ReactHorizontalScrollContainerViewManager ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.progressbar.ReactProgressBarViewManager ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.progressbar.ProgressBarShadowNode ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.scroll.ReactScrollViewManager ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.slider.ReactSliderManager ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.slider.ReactSliderManager$ReactSliderShadowNode ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.switchview.ReactSwitchManager ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.switchview.ReactSwitchManager$ReactSwitchShadowNode ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.swiperefresh.SwipeRefreshLayoutManager FATAL EXCEPTION: mqt_native_modules Process: com.themealsapp, PID: 15671 java.lang.NoClassDefFoundError: Failed resolution of: Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout; at com.facebook.react.shell.MainReactPackage.createViewManagers(MainReactPackage.java:185) at com.facebook.react.ReactInstanceManager.getOrCreateViewManagers(ReactInstanceManager.java:782) at com.facebook.react.CoreModulesPackage.createUIManager(CoreModulesPackage.java:184) at com.facebook.react.CoreModulesPackage.getModule(CoreModulesPackage.java:152) at com.facebook.react.TurboReactPackage$ModuleHolderProvider.get(TurboReactPackage.java:122) at com.facebook.react.TurboReactPackage$ModuleHolderProvider.get(TurboReactPackage.java:110) at com.facebook.react.bridge.ModuleHolder.create(ModuleHolder.java:188) at com.facebook.react.bridge.ModuleHolder.getModule(ModuleHolder.java:153) at com.facebook.react.bridge.NativeModuleRegistry.getModule(NativeModuleRegistry.java:148) at com.facebook.react.bridge.CatalystInstanceImpl.getNativeModule(CatalystInstanceImpl.java:479) at com.facebook.react.bridge.CatalystInstanceImpl.getNativeModule(CatalystInstanceImpl.java:466) at com.facebook.react.uimanager.UIManagerHelper.getUIManager(UIManagerHelper.java:31) at com.facebook.react.ReactInstanceManager.attachRootViewToInstance(ReactInstanceManager.java:1054) at com.facebook.react.ReactInstanceManager.setupReactContext(ReactInstanceManager.java:1012) at com.facebook.react.ReactInstanceManager.access$1400(ReactInstanceManager.java:125) at com.facebook.react.ReactInstanceManager$5$2.run(ReactInstanceManager.java:972) at android.os.Handler.handleCallback(Handler.java:873) at android.os.Handler.dispatchMessage(Handler.java:99) at com.facebook.react.bridge.queue.MessageQueueThreadHandler.dispatchMessage(MessageQueueThreadHandler.java:26) at android.os.Looper.loop(Looper.java:193) at com.facebook.react.bridge.queue.MessageQueueThreadImpl$4.run(MessageQueueThreadImpl.java:225) at java.lang.Thread.run(Thread.java:764) Caused by: java.lang.ClassNotFoundException: Didn't find class "androidx.swiperefreshlayout.widget.SwipeRefreshLayout" on path: DexPathList[[zip file "/data/app/com.themealsapp-C0f4b-llUrryqdD-GckZoQ==/base.apk"],nativeLibraryDirectories=[/data/app/com.themealsapp-C0f4b-llUrryqdD-GckZoQ==/lib/x86, /data/app/com.themealsapp-C0f4b-llUrryqdD-GckZoQ==/base.apk!/lib/x86, /system/lib]] at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:134) at java.lang.ClassLoader.loadClass(ClassLoader.java:379) at java.lang.ClassLoader.loadClass(ClassLoader.java:312) ... 22 more Force finishing activity com.themealsapp/.MainActivity channel '833f741 com.themealsapp/com.themealsapp.MainActivity (server)' ~ Consumer closed input channel or an error occurred. events=0x9 channel '833f741 com.themealsapp/com.themealsapp.MainActivity (server)' ~ Channel is unrecoverably broken and will be disposed! Attempted to unregister already unregistered input channel '833f741 com.themealsapp/com.themealsapp.MainActivity (server)' Attempting to set client state on removed layer: com.themealsapp/com.themealsapp.MainActivity#0 Attempting to destroy on removed layer: com.themealsapp/com.themealsapp.MainActivity#0Android Version : 9 [Emulator]
React : 16.9.0
React-native : 0.61.1
React-navigation : 4.0.10
React-navigation-stack : 1.9.0
React-navigation-tabs : 2.5.5
Hi @vivekraj ,
I believe this happens because you didn't correctly configure Flipper when migrating React Native to 0.61.1.
I also encountered this problem, as long as you install this package Android will flip back, because react-navigation can not remove react-native-screens, how to solve it?
"react-native": "0.61.1",
"react-native-screens": "^2.0.0-alpha.3",
"react-navigation": "^4.0.10",
"react-navigation-stack": "^1.9.1",
"react-navigation-tabs": "^2.5.5",
@vivekraj
It works for me! Thanks!
Android Version : 9 [Emulator]
"react": "16.9.0",
"react-native": "0.61.1",
"react-navigation": "^4.0.10",
"react-native-screens": "^2.0.0-alpha.3",
"react-navigation-stack": "^2.0.0-alpha.19",
"react-navigation-tabs": "^2.5.5",
I tried with an other device, and I did not have the crash. I tried on a Samsung S10 running Android 9.
The device on which the app is crashing with always the same error message (first post) is running Android 8.1, so it seems not all Android versions crashes.
I have this error with Android 8. Any fix?
same here!
Had the same error and @vivekraj solution worked for me.
I had a similar issue where my app crashed on startup on Android.
However I am using react-native-screens and react-native-track-player and in the npm version in the dependencies is used
implementation "com.android.support:support-compat:${safeExtGet('supportLibVersion', '27.1.1')}"
implementation "com.android.support:support-media-compat:${safeExtGet('supportLibVersion', '27.1.1')}"
implementation "com.github.bumptech.glide:glide:4.7.1"
So although the react-native-screens I had the dependencies needed (as described by @vivekraj ) in android>app>build.gradle the app stopped crashing after I replaced the above dependencies within react-native-track-player.
Hello,
I upgraded React Native to 0.61.5, the iOS and Android parts compile successfully. The iOS app launch also successfully but not the Android app.
The Android app launch and stuck on splash screen with no error so I activated logs adb logcat and I found a similar error:
System.err: java.lang.ClassNotFoundException: com.facebook.flipper.ReactNativeFlipper
After 2 day of try I have no idea how to resolve this issue. I have follow all migration procedure for React Native 0.6+ and all packages including React Navigation. This is where I am:
package.json
"react": "16.9.0",
"react-native": "0.61.5",
"react-native-gesture-handler": "^1.5.2",
"react-native-reanimated": "^1.4.0",
"react-native-screens": "^2.0.0-alpha.17",
"react-navigation": "^4.0.10",
"react-navigation-drawer": "^2.3.3",
"react-navigation-stack": "^1.10.3"
android/app/build.gradle
dependencies {
implementation fileTree(dir: "libs", include: ["*.jar"])
implementation "com.facebook.react:react-native:+" // From node_modules
implementation 'androidx.appcompat:appcompat:1.1.0-rc01'
implementation 'androidx.swiperefreshlayout:swiperefreshlayout:1.1.0-alpha02'
if (enableHermes) {
def hermesPath = "../../node_modules/hermes-engine/android/";
debugImplementation files(hermesPath + "hermes-debug.aar")
releaseImplementation files(hermesPath + "hermes-release.aar")
} else {
implementation jscFlavor
}
}
configurations.all {
resolutionStrategy {
force "com.facebook.soloader:soloader:0.8.0"
}
}
// Run this once to be able to run the application with BUCK
// puts all compile dependencies into folder libs for BUCK to use
task copyDownloadableDepsToLibs(type: Copy) {
from configurations.compile
into "libs"
}
apply from: file("../../node_modules/@react-native-community/cli-platform-android/native_modules.gradle"); applyNativeModulesAppBuildGradle(project)
apply plugin: "com.google.gms.google-services"
MainActivity.java
package com.dedge.centralinventory;
import android.os.Bundle;
import com.facebook.react.ReactFragmentActivity;
import com.facebook.react.ReactActivityDelegate;
import com.facebook.react.ReactRootView;
import com.swmansion.gesturehandler.react.RNGestureHandlerEnabledRootView;
public class MainActivity extends ReactFragmentActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(null);
}
@Override
protected ReactActivityDelegate createReactActivityDelegate() {
return new ReactActivityDelegate(this, getMainComponentName()) {
@Override
protected ReactRootView createRootView() {
return new RNGestureHandlerEnabledRootView(MainActivity.this);
}
};
}
}
MainApplication.java
package com.dedge.centralinventory;
import android.app.Application;
import android.content.Context;
import com.facebook.react.PackageList;
import com.facebook.react.ReactApplication;
import com.facebook.react.ReactNativeHost;
import com.facebook.react.ReactPackage;
import com.facebook.soloader.SoLoader;
import java.lang.reflect.InvocationTargetException;
import java.util.List;
public class MainApplication extends Application implements ReactApplication {
private final ReactNativeHost mReactNativeHost = new ReactNativeHost(this) {
@Override
public boolean getUseDeveloperSupport() {
return BuildConfig.DEBUG;
}
@Override
protected List<ReactPackage> getPackages() {
@SuppressWarnings("UnnecessaryLocalVariable")
List<ReactPackage> packages = new PackageList(this).getPackages();
// Packages that cannot be autolinked yet can be added manually here, for example:
// packages.add();
return packages;
}
@Override
protected String getJSMainModuleName() {
return "index";
}
};
@Override
public ReactNativeHost getReactNativeHost() {
return mReactNativeHost;
}
@Override
public void onCreate() {
super.onCreate();
SoLoader.init(this, /* native exopackage */ false);
initializeFlipper(this); // Remove this line if you don't want Flipper enabled
}
/**
* Loads Flipper in React Native templates.
*
* @param context
*/
private static void initializeFlipper(Context context) {
if (BuildConfig.DEBUG) {
try {
/*
* We use reflection here to pick up the class that initializes Flipper, since
* Flipper library is not available in release mode
*/
Class<?> aClass = Class.forName("com.facebook.flipper.ReactNativeFlipper");
aClass.getMethod("initializeFlipper", Context.class).invoke(null, context);
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (NoSuchMethodException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (InvocationTargetException e) {
e.printStackTrace();
}
}
}
}
If anyone of you tell me what could be the origin of the problem I will be grateful 🙏🏻
@nicolashemonic Flipper isn't working on 0.61.x, so commenting out/removing initializeFlipper(this) in yourMainApplication.java should do the trick.
@Alaa-Ben Effectively initializeFlipper(this) triggered the error. The React Native team is working hard to simplify the upgrade processus but I don't understand why this line is not commented by default! So much time lost! Thank you.
Edit:
So the error is not related to react-native-screens (sorry!) but I hope that will help anyone :)
implementation 'androidx.appcompat:appcompat:1.1.0-rc01' implementation 'androidx.swiperefreshlayout:swiperefreshlayout:1.1.0-alpha02'
I added these lines to android/app/build.gradle file. The exception continues but now the app runs without crashing
It looks like the problems here are not strictly related to react-native-screens. Flipper should work just fine in rn 0.62 btw. I am closing this issue then. Feel free to comment if you still encounter any issues.
@Alaa-Ben @vivekraj
I tried all the solutions presented here for both navigation and flipper. I have version 0.63.2 and my problem persists, any solution?
We are seeing this issue and do not have flipper.
Most helpful comment
@Alaa-Ben @vivekraj
I tried all the solutions presented here for both navigation and flipper. I have version 0.63.2 and my problem persists, any solution?