Skip to content

Crash "com.facebook.soloader.SysUtil.dumbDeleteRecursive" #77

Open

Description

@botevst

Starting from May 21, most of our users' devices began to crash with an error:

java.lang.RuntimeException: 
  at android.app.ActivityThread.handleBindApplication (ActivityThread.java:7409)
  at android.app.ActivityThread.access$2400 (ActivityThread.java:251)
  at android.app.ActivityThread$H.handleMessage (ActivityThread.java:2284)
  at android.os.Handler.dispatchMessage (Handler.java:110)
  at android.os.Looper.loop (Looper.java:219)
  at android.app.ActivityThread.main (ActivityThread.java:8393)
  at java.lang.reflect.Method.invoke (Native Method)
  at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:513)
  at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1055)
Caused by: java.lang.RuntimeException: 
  at com.facebook.soloader.SoLoader.init (SoLoader.java:214)
  at com.ultimateguitar.ugpro.MainApplication.onCreate (MainApplication.java:163)
  at android.app.Instrumentation.callApplicationOnCreate (Instrumentation.java:1202)
  at android.app.ActivityThread.handleBindApplication (ActivityThread.java:7393)
Caused by: java.io.IOException: 
  at com.facebook.soloader.SysUtil.dumbDeleteRecursive (SysUtil.java:119)
  at com.facebook.soloader.UnpackingSoSource.deleteUnmentionedFiles (UnpackingSoSource.java:207)
  at com.facebook.soloader.UnpackingSoSource.regenerate (UnpackingSoSource.java:264)
  at com.facebook.soloader.UnpackingSoSource.refreshLocked (UnpackingSoSource.java:321)
  at com.facebook.soloader.UnpackingSoSource.prepare (UnpackingSoSource.java:414)
  at com.facebook.soloader.SoLoader.initSoSources (SoLoader.java:322)
  at com.facebook.soloader.SoLoader.init (SoLoader.java:200)
  at com.facebook.soloader.SoLoader.init (SoLoader.java:182)
  at com.facebook.soloader.SoLoader.init (SoLoader.java:212)

We tested different ideas starting with targetSDKVersion=30 and different versions of the RN.

  • react-native 0.63.3
  • Android App Bundle
  • Android 9, 10, 11

Activity

  1. nahuelb commented on May 31, 2021

    @nahuelb

    Also having the same issue on my last android release (released on May 19), I am using react native 0.64.1.

    Stacktrace:

    caused by: java.io.IOException: could not delete: /data/user/0/app.puramente.app/lib-0/libevent-2.1.so
            at com.facebook.soloader.SysUtil.dumbDeleteRecursive(SysUtil.java:119)
            at com.facebook.soloader.UnpackingSoSource.deleteUnmentionedFiles(UnpackingSoSource.java:207)
            at com.facebook.soloader.UnpackingSoSource.regenerate(UnpackingSoSource.java:264)
            at com.facebook.soloader.UnpackingSoSource.refreshLocked(UnpackingSoSource.java:321)
            at com.facebook.soloader.UnpackingSoSource.prepare(UnpackingSoSource.java:414)
            at com.facebook.soloader.SoLoader.initSoSources(SoLoader.java:322)
            at com.facebook.soloader.SoLoader.init(SoLoader.java:200)
            at com.facebook.soloader.SoLoader.init(SoLoader.java:182)
            at com.facebook.soloader.SoLoader.init(SoLoader.java:212)
            at app.puramente.app.MainApplication.onCreate(MainApplication.java:79)
            at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1158)
            at android.app.ActivityThread.handleBindApplication(ActivityThread.java:6266)
            at android.app.ActivityThread.access$1200(ActivityThread.java:240)
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1797)
            at android.os.Handler.dispatchMessage(Handler.java:106)
            at android.os.Looper.loop(Looper.java:214)
            at android.app.ActivityThread.main(ActivityThread.java:7094)
            at java.lang.reflect.Method.invoke(Method.java:-2)
            at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:494)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:975)
    

    Some stuff I realized:

    • Only happens when the user updates the app to the new version, fresh downloads work fine.
    • If the user having the crash, uninstalls and re-installs the app, it works.
    • If the user goes to the Android settings and clears the cache of the app, it is also fixed.

    Edit
    I was able to fix the problem by adding this to my root build.gradle:

    allprojects {
        repositories {
            ....stuff
    
            configurations.all {
                resolutionStrategy {
                    force "com.facebook.soloader:soloader:0.10.1"
    	    }
            }
        }
    }
    

    And also this to my app/build.gradle:

    implementation 'com.facebook.soloader:soloader:0.10.1+'
    
  2. JeffGuKang commented on Nov 12, 2021

    @JeffGuKang

    It was a very critical issue. It is happened when we deploy application with RN version downgrade from 0.66.1 to 0.64.1.

  3. simpleton commented on Nov 15, 2021

    @simpleton
    Contributor

    is your APP still experiencing this crash on v0.10.3?

  4. JeffGuKang commented on Nov 24, 2021

    @JeffGuKang

    is your APP still experiencing this crash on v0.10.3?

    I am not sure. I applied your solution above and recommend re install to users a lot. and it looks working well.
    But I am not sure it is happened only when we downgrade RN version to 0.64 from 0.66.

  5. 9r4ik commented on Dec 1, 2021

    @9r4ik

    same when downgrade from 0.66 to 0.64

  6. scarlac commented on Apr 19, 2022

    @scarlac

    @simpleton I had this issue consistently even after rebuilding (without reinstalling).
    It was fixed for me by updating (as instructed) to v0.10.1. The resolved version seems to v0.10.1, not .3, according to Android Studio's "Gradle" sidebar, that lists all dependencies:

    com.facebook.soloader:annotation:0.10.1
    com.facebook.soloader:nativeloader:0.10.1
    com.facebook.soloader:soloader:0.10.1@aar
    
  7. msharibahmed commented on Sep 2, 2022

    @msharibahmed

    I am getting the below LOG in my play console account and exactly same thing is happening that you mentioned
    @botevst @nahuelb
    ->

    Some stuff I realized:

    • Only happens when the user updates the app to the new version, fresh downloads work fine.
    • If the user has the crash, uninstalls and re-installs the app, and it works.
    • If the user goes to the Android settings and clears the cache of the app, it is also fixed.
    Exception java.lang.RuntimeException:
      at android.app.ActivityThread.installProvider (ActivityThread.java:8195)
      at android.app.ActivityThread.installContentProviders (ActivityThread.java:7698)
      at android.app.ActivityThread.handleBindApplication (ActivityThread.java:7452)
      at android.app.ActivityThread.access$1600 (ActivityThread.java:310)
      at android.app.ActivityThread$H.handleMessage (ActivityThread.java:2277)
      at android.os.Handler.dispatchMessage (Handler.java:106)
      at android.os.Looper.loopOnce (Looper.java:226)
      at android.os.Looper.loop (Looper.java:313)
      at android.app.ActivityThread.main (ActivityThread.java:8633)
      at java.lang.reflect.Method.invoke (Method.java)
      at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:567)
      at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1133)
    Caused by androidx.startup.d:
      at androidx.startup.AppInitializer.doInitialize (AppInitializer.java)
      at androidx.startup.AppInitializer.discoverAndInitialize (AppInitializer.java)
      at androidx.startup.InitializationProvider.onCreate (InitializationProvider.java)
      at android.content.ContentProvider.attachInfo (ContentProvider.java:2516)
      at android.content.ContentProvider.attachInfo (ContentProvider.java:2486)
      at android.app.ActivityThread.installProvider (ActivityThread.java:8190)
    Caused by java.lang.RuntimeException:
      at com.facebook.soloader.SoLoader.init (SoLoader.java)
      at org.jitsi.meet.sdk.JitsiInitializer.create (JitsiInitializer.java)
      at org.jitsi.meet.sdk.JitsiInitializer.create (JitsiInitializer.java)
      at androidx.startup.AppInitializer.doInitialize (AppInitializer.java)
    Caused by java.io.IOException:
      at com.facebook.soloader.SysUtil.dumbDeleteRecursive (SysUtil.java)
      at com.facebook.soloader.UnpackingSoSource.deleteUnmentionedFiles (UnpackingSoSource.java)
      at com.facebook.soloader.UnpackingSoSource.regenerate (UnpackingSoSource.java)
      at com.facebook.soloader.UnpackingSoSource.refreshLocked (UnpackingSoSource.java)
      at com.facebook.soloader.UnpackingSoSource.prepare (UnpackingSoSource.java)
      at com.facebook.soloader.SoLoader.initSoSources (SoLoader.java)
      at com.facebook.soloader.SoLoader.init (SoLoader.java)
      at com.facebook.soloader.SoLoader.init (SoLoader.java)
      at com.facebook.soloader.SoLoader.init (SoLoader.java)
    

    FIXED:
    By adding this in build.gradle file-
    implementation 'com.facebook.soloader:soloader:0.10.1+'

  8. simpleton commented on Sep 2, 2022

    @simpleton
    Contributor
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions