'Failed to find fragment for React Root View' React Native Android RNScreens



我不得不为android重建我的gradle,现在我在RNScreens中遇到了一个错误。

Failed to find fragment for React Root View显示在应用程序中。

这是logcat:

2022-08-20 22:54:02.259 9195-9241/com.testApp.testApp E/WM-WorkerWrapper: Work [ id=b68c8532-e3ae-455d-9d84-a0a859f26e40, tags={ FOCUS_LOST_WORKER_TAG, com.onesignal.OSFocusHandler$OnLostFocusWorker } ] failed because it threw an exception/error
java.util.concurrent.ExecutionException: java.lang.NullPointerException: Attempt to invoke virtual method 'android.content.pm.PackageManager android.content.Context.getPackageManager()' on a null object reference
at androidx.work.impl.utils.futures.AbstractFuture.getDoneValue(AbstractFuture.java:516)
at androidx.work.impl.utils.futures.AbstractFuture.get(AbstractFuture.java:475)
at androidx.work.impl.WorkerWrapper$2.run(WorkerWrapper.java:311)
at androidx.work.impl.utils.SerialExecutor$Task.run(SerialExecutor.java:91)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
at java.lang.Thread.run(Thread.java:919)
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'android.content.pm.PackageManager android.content.Context.getPackageManager()' on a null object reference
at com.onesignal.OSUtils.packageInstalledAndEnabled(OSUtils.java:275)
at com.onesignal.OSUtils.isGMSInstalledAndEnabled(OSUtils.java:288)
at com.onesignal.OSUtils.supportsGooglePush(OSUtils.java:330)
at com.onesignal.OSUtils.getDeviceType(OSUtils.java:349)
at com.onesignal.OSUtils.isAndroidDeviceType(OSUtils.java:371)
at com.onesignal.LocationController.isGooglePlayServicesAvailable(LocationController.java:337)
at com.onesignal.LocationController.onFocusChange(LocationController.java:325)
at com.onesignal.OneSignal.onAppLostFocus(OneSignal.java:1352)
at com.onesignal.OSFocusHandler$Companion.onLostFocusDoWork(OSFocusHandler.kt:139)
at com.onesignal.OSFocusHandler$OnLostFocusWorker.doWork(OSFocusHandler.kt:118)
at androidx.work.Worker$1.run(Worker.java:86)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167) 
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641) 
at java.lang.Thread.run(Thread.java:919) 
2022-08-20 22:54:02.661 9195-9195/com.testApp.testApp E/DecorView: mWindow.mActivityCurrentConfig is null
2022-08-20 22:54:03.303 9195-9300/com.testApp.testApp E/KeyStore: generateKeyInternal failed on request -68
2022-08-20 22:54:07.628 9195-9195/com.testApp.testApp E/ViewRootImpl: sendUserActionEvent() mView returned.
2022-08-20 22:54:08.061 9195-9195/com.testApp.testApp E/unknown:ReactNative: Exception in native call
java.lang.IllegalStateException: Failed to find fragment for React Root View
at com.swmansion.rnscreens.ScreenContainer.findFragmentManagerForReactRootView(ScreenContainer.kt:168)
at com.swmansion.rnscreens.ScreenContainer.setupFragmentManager(ScreenContainer.kt:198)
at com.swmansion.rnscreens.ScreenContainer.onAttachedToWindow(ScreenContainer.kt:228)
at android.view.View.dispatchAttachedToWindow(View.java:21304)
at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:4239)
at android.view.ViewGroup.addViewInner(ViewGroup.java:6001)
at android.view.ViewGroup.addView(ViewGroup.java:5777)
at com.facebook.react.views.view.ReactViewGroup.addView(ReactViewGroup.java:466)
at android.view.ViewGroup.addView(ViewGroup.java:5717)
at com.facebook.react.uimanager.ViewGroupManager.addView(ViewGroupManager.java:37)
at com.facebook.react.uimanager.NativeViewHierarchyManager.manageChildren(NativeViewHierarchyManager.java:533)
at com.swmansion.reanimated.layoutReanimation.ReanimatedNativeHierarchyManager.manageChildren(ReanimatedNativeHierarchyManager.java:306)
at com.facebook.react.uimanager.UIViewOperationQueue$ManageChildrenOperation.execute(UIViewOperationQueue.java:217)
at com.facebook.react.uimanager.UIViewOperationQueue$1.run(UIViewOperationQueue.java:915)
at com.facebook.react.uimanager.UIViewOperationQueue.flushPendingBatches(UIViewOperationQueue.java:1026)
at com.facebook.react.uimanager.UIViewOperationQueue.access$2600(UIViewOperationQueue.java:47)
at com.facebook.react.uimanager.UIViewOperationQueue$DispatchUIFrameCallback.doFrameGuarded(UIViewOperationQueue.java:1086)
at com.facebook.react.uimanager.GuardedFrameCallback.doFrame(GuardedFrameCallback.java:29)
at com.facebook.react.modules.core.ReactChoreographer$ReactChoreographerDispatcher.doFrame(ReactChoreographer.java:175)
at com.facebook.react.modules.core.ChoreographerCompat$FrameCallback$1.doFrame(ChoreographerCompat.java:85)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:997)
at android.view.Choreographer.doCallbacks(Choreographer.java:797)
at android.view.Choreographer.doFrame(Choreographer.java:728)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:984)
at android.os.Handler.handleCallback(Handler.java:883)
at android.os.Handler.dispatchMessage(Handler.java:100)
at android.os.Looper.loop(Looper.java:237)
at android.app.ActivityThread.main(ActivityThread.java:8167)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:496)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1100)
2022-08-20 22:54:08.198 9195-9195/com.testApp.testApp E/DecorView: mWindow.mActivityCurrentConfig is null

React Native 0.68.1React原生屏幕3.15

此问题发生在react原生屏幕中,并且新版本的react原生屏不稳定。

由于yarn安装或npm安装,其升级反应原生屏幕。

因此,从react原生屏幕中删除插入符号。

"react-native-screens": "^3.11.1""react-native-screens": "3.11.1"并且不允许您的本地屏幕对高级做出反应

然后运行yarnnpm i

这是一个与react原生屏幕有关的问题。他们刚刚发布了一个新的3.17.0版本,它为默认行为添加了一个回退

您只需要升级到3.17.0版

这是修复的PR:https://github.com/software-mansion/react-native-screens/pull/1566

这是发布的详细信息:https://github.com/software-mansion/react-native-screens/releases/tag/3.17.0

我也有同样的问题,反应原生69.4

这是react native的工作解决方案0.66.4此问题也发生在react native0.65.4中。这是因为反应本机屏幕

将react原生屏幕更新至3.11.1,并删除node_modules,然后使用yarn或npm i重新安装它。

我们的应用程序使用的是react native 0.65.1,我们做了以下操作:

  • 在package.json中将react原生屏幕版本从^3.13.1更新为3.13.1
  • 删除yarn.lock文件和nodemodule文件夹
  • 终端引纱
  • 运行应用程序

现在它按预期工作。希望这能有所帮助。

最新更新