react-native-blur icon indicating copy to clipboard operation
react-native-blur copied to clipboard

[Android] Fatal Exception: java.lang.IllegalArgumentException

Open jineshmistry1312 opened this issue 3 years ago • 12 comments

I am using @react-native-community/blur": "^4.2.0"

Getting below crash issue in Firebase Crashlytics.

image

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)

jineshmistry1312 avatar Aug 25 '22 06:08 jineshmistry1312

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)

RRaideRR avatar Aug 25 '22 07:08 RRaideRR

The issues with BlurView appear to be Android specific.

vpillinger-highwater avatar Aug 25 '22 13:08 vpillinger-highwater

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)

invyctus92 avatar Aug 29 '22 09:08 invyctus92

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

HaidarZ avatar Sep 06 '22 08:09 HaidarZ

+1

espenjanson avatar Sep 11 '22 11:09 espenjanson

+2

erwing-bello-teamint avatar Sep 13 '22 02:09 erwing-bello-teamint

+1

beqramo avatar Sep 13 '22 23:09 beqramo

+1

ansumanshah avatar Sep 15 '22 07:09 ansumanshah

+1

ale-mazz avatar Sep 15 '22 07:09 ale-mazz

+1

PetrVasilev avatar Sep 20 '22 03:09 PetrVasilev

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.

RickoNoNo3 avatar Sep 20 '22 09:09 RickoNoNo3

Those who need a patch asap can try this (works for me, but use on your own risk)

Some details after research:

artyorsh avatar Sep 20 '22 10:09 artyorsh

@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 avatar Oct 20 '22 10:10 Kureev

@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...

Titozzz avatar Oct 20 '22 13:10 Titozzz

Thank you for looking into this, @Titozzz!

Can someone provide a repro case for this one, please?

Kureev avatar Oct 21 '22 10:10 Kureev

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

artyorsh avatar Oct 21 '22 14:10 artyorsh

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

Titozzz avatar Oct 21 '22 16:10 Titozzz

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

RnbWd avatar Oct 31 '22 08:10 RnbWd

Same problem on React native 0.68.2 and react-native-blur 4.3.0.

bastianspirek avatar Nov 03 '22 18:11 bastianspirek

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.

mk0116 avatar Nov 09 '22 09:11 mk0116

The android library author said he would try to release a new version with a fix, so we'll update when it's ready

Titozzz avatar Nov 09 '22 15:11 Titozzz

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",

miguflores avatar Nov 09 '22 22:11 miguflores

BE0765F5-B546-463C-B736-D1F2A5B70E53

Same here . In my case its crashing in both android phone and simulator

Bayramito avatar Nov 15 '22 17:11 Bayramito

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.

Bayramito avatar Nov 15 '22 20:11 Bayramito

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

Bayramito avatar Nov 15 '22 20:11 Bayramito

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

Bayramito avatar Nov 15 '22 21:11 Bayramito

Confirming the patch has solved the issue (for now)

chenop avatar Nov 22 '22 11:11 chenop

Confirming the patch has solved the issue (for now)

which patch ?

Bayramito avatar Nov 22 '22 12:11 Bayramito

This patch: https://gist.github.com/artyorsh/cb8cf71a28be5ccde8f1926e06dbe3a8

chenop avatar Nov 22 '22 12:11 chenop

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)

Bayramito avatar Nov 22 '22 12:11 Bayramito