Skip to content

[ANDROID] SoLoader error using App Bundle #23764

Closed
@vanydeasy

Description

@vanydeasy

🐛 Bug Report

Please help!
There are some crashes happening in android using app bundle but I am not sure how to reproduce it. It happens on our app with daily crash of 200 users.

Fatal Exception: java.lang.UnsatisfiedLinkError: couldn't find DSO to load: libreactnativejni.so
       at com.facebook.soloader.SoLoader.doLoadLibraryBySoName(SoLoader.java:738)
       at com.facebook.soloader.SoLoader.loadLibraryBySoName(SoLoader.java:591)
       at com.facebook.soloader.SoLoader.loadLibrary(SoLoader.java:529)
       at com.facebook.soloader.SoLoader.loadLibrary(SoLoader.java:484)
       at com.facebook.react.bridge.ReactBridge.staticInit(ReactBridge.java:30)
       at com.facebook.react.bridge.NativeMap.(NativeMap.java:19)
       at com.facebook.react.jscexecutor.JSCExecutorFactory.create(JSCExecutorFactory.java:25)
       at com.facebook.react.ReactInstanceManager$5.run(ReactInstanceManager.java:944)
       at java.lang.Thread.run(Thread.java:764)

The errors have multiple variations that occur on various android versions.

Fatal Exception: java.lang.UnsatisfiedLinkError
couldn't find DSO to load: libreactnativejni.so caused by: couldn't find DSO to load: libfb.so caused by: couldn't find DSO to load: libgnustl_shared.so caused by: dlopen failed: "/data/data/com.traveloka.android/lib-0/libgnustl_shared.so" is 64-bit instead of 32-bit
Fatal Exception: java.lang.UnsatisfiedLinkError
couldn't find DSO to load: libreactnativejni.so caused by: couldn't find DSO to load: libfb.so caused by: Dynamic section string-table not found
Fatal Exception: java.lang.UnsatisfiedLinkError
couldn't find DSO to load: libreactnativejni.so

To Reproduce

We have tried to reproduce it with many devices but we can only reproduce it in one condition.

  1. Install the release app
  2. Upgrade OS from 32bit to 64bit
  3. Open the app

If we reinstall the app afterwards, it works fine.
Although, we are still unsure whether it is the only error case.

Expected Behavior

The app does not crash on any device.

Code Example

android {
    ...
    defaultConfig {
       ...
        ndk {	
            abiFilters "armeabi-v7a", "x86", "arm64-v8a"
        }
    }
}

Environment

React Native Environment Info:
    System:
      OS: macOS 10.14
      CPU: x64 Intel(R) Core(TM) i7-7820HQ CPU @ 2.90GHz
      Memory: 4.93 GB / 16.00 GB
      Shell: 5.3 - /bin/zsh
    Binaries:
      Node: 8.10.0 - ~/.nvm/versions/node/v8.10.0/bin/node
      Yarn: 1.13.0 - /usr/local/bin/yarn
      npm: 6.8.0 - ~/.nvm/versions/node/v8.10.0/bin/npm
      Watchman: 4.9.0 - /usr/local/bin/watchman
    SDKs:
      iOS SDK:
        Platforms: iOS 12.1, macOS 10.14, tvOS 12.1, watchOS 5.1
      Android SDK:
        Build Tools: 23.0.1, 24.0.0, 24.0.3, 26.0.2, 26.0.3, 27.0.0, 27.0.3, 28.0.0, 28.0.2, 28.0.3
        API Levels: 23, 24, 25, 26, 27, 28
    IDEs:
      Android Studio: 3.3 AI-182.5107.16.33.5264788
      Xcode: 10.1/10B61 - /usr/bin/xcodebuild
    npmPackages:
      react: 16.6.3 => 16.6.3 
      react-native: 0.58.4 => 0.58.4 

Metadata

Metadata

Assignees

No one assigned

    Labels

    BugPlatform: AndroidAndroid applications.StaleThere has been a lack of activity on this issue and it may be closed soon.Tech: Bundler 📦This issue is related to the bundler (Metro, Haul, etc) used.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions