react-native-blur
react-native-blur copied to clipboard
[Android] Fatal Exception: java.lang.IllegalArgumentException
I am using @react-native-community/blur": "^4.2.0"
Getting below crash issue in Firebase Crashlytics.

Fatal Exception: java.lang.IllegalArgumentException: Software rendering doesn't support drawRenderNode
at android.graphics.Canvas.drawRenderNode(Canvas.java:2317)
at eightbitlab.com.blurview.RenderEffectBlur.render(RenderEffectBlur.java:2)
at eightbitlab.com.blurview.PreDrawBlurController.draw(PreDrawBlurController.java:56)
at eightbitlab.com.blurview.BlurView.draw(BlurView.java:2)
at android.view.View.draw(View.java:23770)
at android.view.ViewGroup.drawChild(ViewGroup.java:5355)
at com.facebook.react.views.view.ReactViewGroup.drawChild(ReactViewGroup.java:23)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:5112)
at com.facebook.react.views.view.ReactViewGroup.dispatchDraw(ReactViewGroup.java:3)
I'm facing the same issue on Android API 32. On Android API 30 it's running fine.
jineshmistry1312 do you know if this problem occurs on Android or iOS for your users?
java.lang.IllegalArgumentException: Software rendering doesn't support drawRenderNode
at android.graphics.Canvas.drawRenderNode(Canvas.java:2317)
at eightbitlab.com.blurview.RenderEffectBlur.render(RenderEffectBlur.java:68)
at eightbitlab.com.blurview.PreDrawBlurController.draw(PreDrawBlurController.java:159)
at eightbitlab.com.blurview.BlurView.draw(BlurView.java:52)
at android.view.View.draw(View.java:22577)
at android.view.ViewGroup.drawChild(ViewGroup.java:4528)
at com.facebook.react.views.view.ReactViewGroup.drawChild(ReactViewGroup.java:783)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4289)
at com.facebook.react.views.view.ReactViewGroup.dispatchDraw(ReactViewGroup.java:755)
at android.view.View.draw(View.java:22575)
at android.view.ViewGroup.drawChild(ViewGroup.java:4528)
at com.facebook.react.views.view.ReactViewGroup.drawChild(ReactViewGroup.java:783)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4289)
at com.facebook.react.views.view.ReactViewGroup.dispatchDraw(ReactViewGroup.java:755)
at android.view.View.draw(View.java:22575)
at android.view.ViewGroup.drawChild(ViewGroup.java:4528)
at com.facebook.react.views.view.ReactViewGroup.drawChild(ReactViewGroup.java:783)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4289)
at com.facebook.react.views.view.ReactViewGroup.dispatchDraw(ReactViewGroup.java:755)
at android.view.View.draw(View.java:22575)
at android.view.ViewGroup.drawChild(ViewGroup.java:4528)
at com.facebook.react.views.view.ReactViewGroup.drawChild(ReactViewGroup.java:783)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4289)
at com.facebook.react.views.view.ReactViewGroup.dispatchDraw(ReactViewGroup.java:755)
at android.view.View.draw(View.java:22575)
at android.view.ViewGroup.drawChild(ViewGroup.java:4528)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4289)
at android.view.View.buildDrawingCacheImpl(View.java:21970)
at android.view.View.buildDrawingCache(View.java:21836)
at android.view.View.draw(View.java:22427)
at android.view.ViewGroup.drawChild(ViewGroup.java:4528)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4289)
at android.view.View.draw(View.java:22575)
at android.view.ViewGroup.drawChild(ViewGroup.java:4528)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4289)
at android.view.View.draw(View.java:22575)
at android.view.ViewGroup.drawChild(ViewGroup.java:4528)
at com.facebook.react.views.view.ReactViewGroup.drawChild(ReactViewGroup.java:783)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4289)
at com.facebook.react.views.view.ReactViewGroup.dispatchDraw(ReactViewGroup.java:755)
at android.view.View.draw(View.java:22707)
at android.view.View.draw(View.java:22577)
at android.view.ViewGroup.drawChild(ViewGroup.java:4528)
at com.facebook.react.views.view.ReactViewGroup.drawChild(ReactViewGroup.java:783)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4289)
at com.facebook.react.views.view.ReactViewGroup.dispatchDraw(ReactViewGroup.java:755)
at android.view.View.draw(View.java:22575)
at android.view.ViewGroup.drawChild(ViewGroup.java:4528)
at com.facebook.react.views.view.ReactViewGroup.drawChild(ReactViewGroup.java:783)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4289)
at com.facebook.react.views.view.ReactViewGroup.dispatchDraw(ReactViewGroup.java:755)
at android.view.View.draw(View.java:22575)
at android.view.ViewGroup.drawChild(ViewGroup.java:4528)
at com.facebook.react.views.view.ReactViewGroup.drawChild(ReactViewGroup.java:783)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4289)
at com.facebook.react.views.view.ReactViewGroup.dispatchDraw(ReactViewGroup.java:755)
at android.view.View.draw(View.java:22575)
at android.view.ViewGroup.drawChild(ViewGroup.java:4528)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4289)
at com.facebook.react.ReactRootView.dispatchDraw(ReactRootView.java:255)
at android.view.View.draw(View.java:22575)
at android.view.ViewGroup.drawChild(ViewGroup.java:4528)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4289)
at android.view.View.draw(View.java:22575)
at android.view.ViewGroup.drawChild(ViewGroup.java:4528)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4289)
at android.view.View.draw(View.java:22707)
at eightbitlab.com.blurview.PreDrawBlurController.updateBlur(PreDrawBlurController.java:115)
at eightbitlab.com.blurview.PreDrawBlurController$1.onPreDraw(PreDrawBlurController.java:50)
at android.view.ViewTreeObserver.dispatchOnPreDraw(ViewTreeObserver.java:1093)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:3362)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:2179)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:8787)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1037)
at android.view.Choreographer.doCallbacks(Choreographer.java:845)
at android.view.Choreographer.doFrame(Choreographer.java:780)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:1022)
at android.os.Handler.handleCallback(Handler.java:938)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loopOnce(Looper.java:201)
at android.os.Looper.loop(Looper.java:288)
at android.app.ActivityThread.main(ActivityThread.java:7842)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:548)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1003)
The issues with BlurView appear to be Android specific.
android 12 Galaxy S20+ (SM-G985F)
runtimeVersions:
{
"androidApiLevel": "31",
"osBuild": "SP1A.210812.016.G985FXXUEFVG5",
"reactNative": "0.69.5",
"reactNativeJsEngine": "hermes"
}
java.lang.IllegalArgumentException: Software rendering doesn't support drawRenderNode
at android.graphics.Canvas.drawRenderNode(Canvas.java:2317)
at eightbitlab.com.blurview.RenderEffectBlur.render(RenderEffectBlur.java:68)
at eightbitlab.com.blurview.PreDrawBlurController.draw(PreDrawBlurController.java:159)
at eightbitlab.com.blurview.BlurView.draw(BlurView.java:52)
at android.view.View.draw(View.java:23770)
at android.view.ViewGroup.drawChild(ViewGroup.java:5355)
at com.facebook.react.views.view.ReactViewGroup.drawChild(ReactViewGroup.java:783)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:5112)
at com.facebook.react.views.view.ReactViewGroup.dispatchDraw(ReactViewGroup.java:755)
at android.view.View.draw(View.java:23901)
at android.view.View.draw(View.java:23770)
at android.view.ViewGroup.drawChild(ViewGroup.java:5355)
at com.facebook.react.views.view.ReactViewGroup.drawChild(ReactViewGroup.java:783)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:5112)
at com.facebook.react.views.view.ReactViewGroup.dispatchDraw(ReactViewGroup.java:755)
at android.view.View.draw(View.java:23768)
at android.view.ViewGroup.drawChild(ViewGroup.java:5355)
at com.facebook.react.views.view.ReactViewGroup.drawChild(ReactViewGroup.java:783)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:5112)
at com.facebook.react.views.view.ReactViewGroup.dispatchDraw(ReactViewGroup.java:755)
at android.view.View.draw(View.java:23768)
at android.view.ViewGroup.drawChild(ViewGroup.java:5355)
at com.facebook.react.views.view.ReactViewGroup.drawChild(ReactViewGroup.java:783)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:5112)
at com.facebook.react.views.view.ReactViewGroup.dispatchDraw(ReactViewGroup.java:755)
at android.view.View.draw(View.java:23768)
at android.view.ViewGroup.drawChild(ViewGroup.java:5355)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:5112)
at android.view.View.buildDrawingCacheImpl(View.java:23158)
at android.view.View.buildDrawingCache(View.java:23024)
at android.view.View.draw(View.java:23620)
at android.view.ViewGroup.drawChild(ViewGroup.java:5355)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:5112)
at android.view.View.draw(View.java:23768)
at android.view.ViewGroup.drawChild(ViewGroup.java:5355)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:5112)
at android.view.View.draw(View.java:23768)
at android.view.ViewGroup.drawChild(ViewGroup.java:5355)
at com.facebook.react.views.view.ReactViewGroup.drawChild(ReactViewGroup.java:783)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:5112)
at com.facebook.react.views.view.ReactViewGroup.dispatchDraw(ReactViewGroup.java:755)
at android.view.View.draw(View.java:23901)
at android.view.View.draw(View.java:23770)
at android.view.ViewGroup.drawChild(ViewGroup.java:5355)
at com.facebook.react.views.view.ReactViewGroup.drawChild(ReactViewGroup.java:783)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:5112)
at com.facebook.react.views.view.ReactViewGroup.dispatchDraw(ReactViewGroup.java:755)
at android.view.View.draw(View.java:23768)
at android.view.ViewGroup.drawChild(ViewGroup.java:5355)
at com.facebook.react.views.view.ReactViewGroup.drawChild(ReactViewGroup.java:783)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:5112)
at com.facebook.react.views.view.ReactViewGroup.dispatchDraw(ReactViewGroup.java:755)
at android.view.View.draw(View.java:23901)
at android.view.View.draw(View.java:23770)
at android.view.ViewGroup.drawChild(ViewGroup.java:5355)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:5112)
at android.view.View.draw(View.java:23768)
at android.view.ViewGroup.drawChild(ViewGroup.java:5355)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:5112)
at android.view.View.draw(View.java:23768)
at android.view.ViewGroup.drawChild(ViewGroup.java:5355)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:5112)
at android.view.View.draw(View.java:23768)
at android.view.ViewGroup.drawChild(ViewGroup.java:5355)
at com.facebook.react.views.view.ReactViewGroup.drawChild(ReactViewGroup.java:783)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:5112)
at com.facebook.react.views.view.ReactViewGroup.dispatchDraw(ReactViewGroup.java:755)
at android.view.View.draw(View.java:23901)
at android.view.View.draw(View.java:23770)
at android.view.ViewGroup.drawChild(ViewGroup.java:5355)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:5112)
at android.view.View.draw(View.java:23768)
at android.view.ViewGroup.drawChild(ViewGroup.java:5355)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:5112)
at android.view.View.draw(View.java:23768)
at android.view.ViewGroup.drawChild(ViewGroup.java:5355)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:5112)
at android.view.View.draw(View.java:23768)
at android.view.ViewGroup.drawChild(ViewGroup.java:5355)
at com.facebook.react.views.view.ReactViewGroup.drawChild(ReactViewGroup.java:783)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:5112)
at com.facebook.react.views.view.ReactViewGroup.dispatchDraw(ReactViewGroup.java:755)
at android.view.View.draw(View.java:23768)
at android.view.ViewGroup.drawChild(ViewGroup.java:5355)
at com.facebook.react.views.view.ReactViewGroup.drawChild(ReactViewGroup.java:783)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:5112)
at com.facebook.react.views.view.ReactViewGroup.dispatchDraw(ReactViewGroup.java:755)
at android.view.View.draw(View.java:23768)
at android.view.ViewGroup.drawChild(ViewGroup.java:5355)
at com.facebook.react.views.view.ReactViewGroup.drawChild(ReactViewGroup.java:783)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:5112)
at com.facebook.react.views.view.ReactViewGroup.dispatchDraw(ReactViewGroup.java:755)
at android.view.View.draw(View.java:23768)
at android.view.ViewGroup.drawChild(ViewGroup.java:5355)
at com.facebook.react.views.view.ReactViewGroup.drawChild(ReactViewGroup.java:783)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:5112)
at com.facebook.react.views.view.ReactViewGroup.dispatchDraw(ReactViewGroup.java:755)
at android.view.View.draw(View.java:23768)
at android.view.ViewGroup.drawChild(ViewGroup.java:5355)
at com.facebook.react.views.view.ReactViewGroup.drawChild(ReactViewGroup.java:783)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:5112)
at com.facebook.react.views.view.ReactViewGroup.dispatchDraw(ReactViewGroup.java:755)
at android.view.View.draw(View.java:23901)
at android.view.View.draw(View.java:23770)
at android.view.ViewGroup.drawChild(ViewGroup.java:5355)
at com.facebook.react.views.view.ReactViewGroup.drawChild(ReactViewGroup.java:783)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:5112)
at com.facebook.react.views.view.ReactViewGroup.dispatchDraw(ReactViewGroup.java:755)
at android.view.View.draw(View.java:23768)
at android.view.ViewGroup.drawChild(ViewGroup.java:5355)
at com.facebook.react.views.view.ReactViewGroup.drawChild(ReactViewGroup.java:783)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:5112)
at com.facebook.react.views.view.ReactViewGroup.dispatchDraw(ReactViewGroup.java:755)
at android.view.View.draw(View.java:23768)
at android.view.ViewGroup.drawChild(ViewGroup.java:5355)
at com.facebook.react.views.view.ReactViewGroup.drawChild(ReactViewGroup.java:783)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:5112)
at com.facebook.react.views.view.ReactViewGroup.dispatchDraw(ReactViewGroup.java:755)
at android.view.View.draw(View.java:23768)
at android.view.ViewGroup.drawChild(ViewGroup.java:5355)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:5112)
at android.view.View.draw(View.java:23768)
at android.view.ViewGroup.drawChild(ViewGroup.java:5355)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:5112)
at android.view.View.draw(View.java:23768)
at android.view.ViewGroup.drawChild(ViewGroup.java:5355)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:5112)
at android.view.View.draw(View.java:23768)
at android.view.ViewGroup.drawChild(ViewGroup.java:5355)
at com.facebook.react.views.view.ReactViewGroup.drawChild(ReactViewGroup.java:783)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:5112)
at com.facebook.react.views.view.ReactViewGroup.dispatchDraw(ReactViewGroup.java:755)
at android.view.View.draw(View.java:23901)
at android.view.View.draw(View.java:23770)
at android.view.ViewGroup.drawChild(ViewGroup.java:5355)
at com.facebook.react.views.view.ReactViewGroup.drawChild(ReactViewGroup.java:783)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:5112)
at com.facebook.react.views.view.ReactViewGroup.dispatchDraw(ReactViewGroup.java:755)
at android.view.View.draw(View.java:23768)
at android.view.ViewGroup.drawChild(ViewGroup.java:5355)
at com.facebook.react.views.view.ReactViewGroup.drawChild(ReactViewGroup.java:783)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:5112)
at com.facebook.react.views.view.ReactViewGroup.dispatchDraw(ReactViewGroup.java:755)
at android.view.View.draw(View.java:23768)
at android.view.ViewGroup.drawChild(ViewGroup.java:5355)
at com.facebook.react.views.view.ReactViewGroup.drawChild(ReactViewGroup.java:783)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:5112)
at com.facebook.react.views.view.ReactViewGroup.dispatchDraw(ReactViewGroup.java:755)
at android.view.View.draw(View.java:23768)
at android.view.ViewGroup.drawChild(ViewGroup.java:5355)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:5112)
at com.facebook.react.ReactRootView.dispatchDraw(ReactRootView.java:291)
at android.view.View.draw(View.java:23768)
at android.view.ViewGroup.drawChild(ViewGroup.java:5355)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:5112)
at android.view.View.draw(View.java:23901)
at eightbitlab.com.blurview.PreDrawBlurController.updateBlur(PreDrawBlurController.java:115)
at eightbitlab.com.blurview.PreDrawBlurController$1.onPreDraw(PreDrawBlurController.java:50)
at android.view.ViewTreeObserver.dispatchOnPreDraw(ViewTreeObserver.java:1112)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:4189)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:2911)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:10458)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1108)
at android.view.Choreographer.doCallbacks(Choreographer.java:866)
at android.view.Choreographer.doFrame(Choreographer.java:797)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:1092)
at android.os.Handler.handleCallback(Handler.java:938)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loopOnce(Looper.java:226)
at android.os.Looper.loop(Looper.java:313)
at android.app.ActivityThread.main(ActivityThread.java:8669)
at java.lang.reflect.Method.invoke(Method.java:-2)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:571)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1135)
The issue appears on Android 12 devices and emulators.
It happens when I try to capture a viewshot using the following library react-native-view-shot
+1
+2
+1
+1
+1
+1
Android 12 (OPPO K9X) same issue.
It appears on the first rendering of BlurView's parent view. If I use effects or cdm lifecycles to maintain a state field called initialized, and the BlurView is rendered only when the state is set to true, it will work fine. (double initial rendering)
But obviously, that is not a permanently effectual solution, and does not consist with the current document.
Those who need a patch asap can try this (works for me, but use on your own risk)
Some details after research:
-
In latest updates, the package uses [email protected], so there is an affecting line.
-
Usage of RenderEffectBlur throws the IllegalArgumentException, because the
drawRenderNodefunction used in the algorithm requires hardware acceleration. -
Usage of
hardwareAccelerated=truein AndroidManifest doesn't resolve the issue
@Titozzz Hi m8! Wondering if you can take a look at the issue. Seems this is something happening after the latest release, I'm not sure if I have enough context to address this one 🤔
@Kureev & everyone else here, I cannot reproduce this on real device / simulator running android 12. Please provide a a reproduction, I would like to address this. In the meantime @artyorsh patch is valid, but it's basically running the less optimised non hardware-accelerated variant all the time, but at least it's not crashing...
Thank you for looking into this, @Titozzz!
Can someone provide a repro case for this one, please?
Yeah, that's a fair point...
@Titozzz I do not remember exact case, I think it was more about a matter of random. A month ago I've spent a few hours trying to catch the reason of the exception, but no luck. We have a couple of places in the app where Blur is used, and it doesn't throw in all of them
I can make a video recording if that can be somehow helpful
It will only throw in the case the canvas isn't hardware accelerated.. but when would this happen and how to detect it, I am unsure
I just upgraded my libraries from react-native 0.66 -> 0.70, and upgraded react-native-blur to the latest version, and I'm getting this issue on android emulator API 31
Same problem on React native 0.68.2 and react-native-blur 4.3.0.
My app crashes under a certain condition 100%. In my case, I navigated to a screen with react-navigation and the screen has a scrollview with a blur view in it. When I pop the screen while the blur view is displaying, it crashes, but if the blur view is not displaying on the screen because I scrolled down or up then it doesn't crash. I hope this helps you guys figure out what's going on.
The android library author said he would try to release a new version with a fix, so we'll update when it's ready
This is algo happening to me but only when I upgraded to react navigation 6:
before upgrade (working without crashes):
"@react-navigation/bottom-tabs": "^5.10.6",
"@react-navigation/drawer": "^5.10.6",
"@react-navigation/native": "^5.8.6",
"@react-navigation/stack": "^5.12.3",
"react-native-safe-area-context": "^3.1.8",
"react-native-screens": "^2.2.0",
after upgrade (crashes every time I open a screen with <BlurView /> component):
"@react-navigation/bottom-tabs": "^6.3.3",
"@react-navigation/drawer": "^6.4.4",
"@react-navigation/native": "^6.0.12",
"@react-navigation/stack": "^6.2.3",
"react-native-safe-area-context": "^4.3.3",
"react-native-screens": "^3.17.0",

Same here . In my case its crashing in both android phone and simulator
This is algo happening to me but only when I upgraded to react navigation 6:
before upgrade (working without crashes):
"@react-navigation/bottom-tabs": "^5.10.6", "@react-navigation/drawer": "^5.10.6", "@react-navigation/native": "^5.8.6", "@react-navigation/stack": "^5.12.3", "react-native-safe-area-context": "^3.1.8", "react-native-screens": "^2.2.0",after upgrade (crashes every time I open a screen with
<BlurView />component):"@react-navigation/bottom-tabs": "^6.3.3", "@react-navigation/drawer": "^6.4.4", "@react-navigation/native": "^6.0.12", "@react-navigation/stack": "^6.2.3", "react-native-safe-area-context": "^4.3.3", "react-native-screens": "^3.17.0",
i am also facing the same kind of issue. For example i am going from screen A to B , then from B to C. But if i goBack from screen C to B it crashes every single time.
I think spotted the react-navigation related issue. So when you trying to navigate to a screen in a different navigation layer, meaning that for examle your navigation tree looks like
Main = Stack Navigator ( with different type of NAVIGATORS in it eg. PostsNavigator, BlogsNavigator) => and you have also shared screens in this Main stack, to be able to access them from everywhere like Settings, like EditProfile....
Posts = Stack Navigator ( with post related screens in it) If you are somewhere in PostsNavigator and If you try to navigate or dispatch (goBack/ unMount) the shared screens from the Main stack, its immediately crashing. But if you also add them to your last working screen's navigator as a screen (in example above if you add these shared screens to the PostsNavigator), then its working completely fine
My app crashes under a certain condition 100%. In my case, I navigated to a screen with react-navigation and the screen has a scrollview with a blur view in it. When I pop the screen while the blur view is displaying, it crashes, but if the blur view is not displaying on the screen because I scrolled down or up then it doesn't crash. I hope this helps you guys figure out what's going on.
https://github.com/Kureev/react-native-blur/issues/489#issuecomment-1315855648
Confirming the patch has solved the issue (for now)
Confirming the patch has solved the issue (for now)
which patch ?
This patch: https://gist.github.com/artyorsh/cb8cf71a28be5ccde8f1926e06dbe3a8
This patch: https://gist.github.com/artyorsh/cb8cf71a28be5ccde8f1926e06dbe3a8
this didn't work on me. still getting crashed.
I dunno but, Its looking like this is react navigation related something to me ... as like I wrote above when I add the destination screen to current navigator its working fine.
btw this is logcat output when crash is happening...
-22 14:18:02.901 30553-30944/com.omuz E/RenderScript: Failed loading RS driver: dlopen failed: library "libRSDriver_mtk.so" not found
2022-11-22 14:18:02.901 30553-30944/com.omuz E/RenderScript: Failed to load runtime libRSDriver_mtk.so, loading default
2022-11-22 14:18:04.126 30553-30553/com.omuz E/unknown:NativeViewHierarchyManager: Unable to update properties for view tag 2727
com.facebook.react.uimanager.IllegalViewOperationException: ViewManager for tag 2727 could not be found.
at com.facebook.react.uimanager.NativeViewHierarchyManager.resolveViewManager(NativeViewHierarchyManager.java:111)
at com.facebook.react.uimanager.NativeViewHierarchyManager.updateProperties(NativeViewHierarchyManager.java:138)
at com.facebook.react.uimanager.UIImplementation.synchronouslyUpdateViewOnUIThread(UIImplementation.java:306)
at com.swmansion.reanimated.NodesManager.updateProps(NodesManager.java:590)
at com.swmansion.reanimated.NativeProxy.updateProps(NativeProxy.java:185)
at com.swmansion.reanimated.NativeProxy$AnimationFrameCallback.onAnimationFrame(Native Method)
at com.swmansion.reanimated.NodesManager.onAnimationFrame(NodesManager.java:275)
at com.swmansion.reanimated.NodesManager.access$000(NodesManager.java:67)
at com.swmansion.reanimated.NodesManager$1.doFrameGuarded(NodesManager.java:172)
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:1240)
at android.view.Choreographer.doCallbacks(Choreographer.java:996)
at android.view.ChoreographerExtImpl.checkScrollOptSceneEnable(ChoreographerExtImpl.java:374)
at android.view.Choreographer.doFrame(Choreographer.java:865)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:1227)
at android.os.Handler.handleCallback(Handler.java:938)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loopOnce(Looper.java:233)
at android.os.Looper.loop(Looper.java:344)
at android.app.ActivityThread.main(ActivityThread.java:8248)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:589)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1071)
2022-11-22 14:18:04.536 30553-30553/com.omuz E/unknown:NativeViewHierarchyManager: Unable to update properties for view tag 3087
com.facebook.react.uimanager.IllegalViewOperationException: ViewManager for tag 3087 could not be found.
at com.facebook.react.uimanager.NativeViewHierarchyManager.resolveViewManager(NativeViewHierarchyManager.java:111)
at com.facebook.react.uimanager.NativeViewHierarchyManager.updateProperties(NativeViewHierarchyManager.java:138)
at com.facebook.react.uimanager.UIImplementation.synchronouslyUpdateViewOnUIThread(UIImplementation.java:306)
at com.swmansion.reanimated.NodesManager.updateProps(NodesManager.java:590)
at com.swmansion.reanimated.NativeProxy.updateProps(NativeProxy.java:185)
at com.swmansion.reanimated.NativeProxy$AnimationFrameCallback.onAnimationFrame(Native Method)
at com.swmansion.reanimated.NodesManager.onAnimationFrame(NodesManager.java:275)
at com.swmansion.reanimated.NodesManager.access$000(NodesManager.java:67)
at com.swmansion.reanimated.NodesManager$1.doFrameGuarded(NodesManager.java:172)
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:1240)
at android.view.Choreographer.doCallbacks(Choreographer.java:996)
at android.view.ChoreographerExtImpl.checkScrollOptSceneEnable(ChoreographerExtImpl.java:374)
at android.view.Choreographer.doFrame(Choreographer.java:865)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:1227)
at android.os.Handler.handleCallback(Handler.java:938)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loopOnce(Looper.java:233)
at android.os.Looper.loop(Looper.java:344)
at android.app.ActivityThread.main(ActivityThread.java:8248)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:589)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1071)
2022-11-22 14:18:04.539 30553-30553/com.omuz E/unknown:NativeViewHierarchyManager: Unable to update properties for view tag 2907
com.facebook.react.uimanager.IllegalViewOperationException: ViewManager for tag 2907 could not be found.
at com.facebook.react.uimanager.NativeViewHierarchyManager.resolveViewManager(NativeViewHierarchyManager.java:111)
at com.facebook.react.uimanager.NativeViewHierarchyManager.updateProperties(NativeViewHierarchyManager.java:138)
at com.facebook.react.uimanager.UIImplementation.synchronouslyUpdateViewOnUIThread(UIImplementation.java:306)
at com.swmansion.reanimated.NodesManager.updateProps(NodesManager.java:590)
at com.swmansion.reanimated.NativeProxy.updateProps(NativeProxy.java:185)
at com.swmansion.reanimated.NativeProxy$AnimationFrameCallback.onAnimationFrame(Native Method)
at com.swmansion.reanimated.NodesManager.onAnimationFrame(NodesManager.java:275)
at com.swmansion.reanimated.NodesManager.access$000(NodesManager.java:67)
at com.swmansion.reanimated.NodesManager$1.doFrameGuarded(NodesManager.java:172)
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:1240)
at android.view.Choreographer.doCallbacks(Choreographer.java:996)
at android.view.ChoreographerExtImpl.checkScrollOptSceneEnable(ChoreographerExtImpl.java:374)
at android.view.Choreographer.doFrame(Choreographer.java:865)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:1227)
at android.os.Handler.handleCallback(Handler.java:938)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loopOnce(Looper.java:233)
at android.os.Looper.loop(Looper.java:344)
at android.app.ActivityThread.main(ActivityThread.java:8248)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:589)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1071)
2022-11-22 14:18:05.280 30553-30553/com.omuz A/libc: Fatal signal 6 (SIGABRT), code -1 (SI_QUEUE) in tid 30553 (com.omuz), pid 30553 (com.omuz)