java.lang.UnsatisfiedLinkError: couldn't find DSO to load: libfbjni.so result: 0

java.lang.UnsatisfiedLinkError: couldn't find DSO to load: libfbjni.so result: 0

我创建了一个新的 react-native 项目并将我的 android 本机模块添加为 dependency.using 官方文档 https://reactnative.dev/docs/native-modules-setup

当我 运行 这样做时,我得到以下堆栈跟踪的错误:

java.lang.UnsatisfiedLinkError: couldn't find DSO to load: libfbjni.so result: 0
        at com.facebook.soloader.SoLoader.doLoadLibraryBySoName(SoLoader.java:825)
        at com.facebook.soloader.SoLoader.loadLibraryBySoName(SoLoader.java:673)
        at com.facebook.soloader.SoLoader.loadLibrary(SoLoader.java:611)
        at com.facebook.soloader.SoLoader.loadLibrary(SoLoader.java:559)
        at com.facebook.soloader.NativeLoaderToSoLoaderDelegate.loadLibrary(NativeLoaderToSoLoaderDelegate.java:25)
        at com.facebook.soloader.nativeloader.NativeLoader.loadLibrary(NativeLoader.java:44)
        at com.facebook.jni.HybridData.<clinit>(HybridData.java:34)
        at com.facebook.flipper.android.FlipperThread.run(FlipperThread.java:25) 

以下是我的package.json

{
  "name": "albums",
  "version": "0.0.1",
  "private": true,
  "scripts": {
    "android": "react-native run-android",
    "ios": "react-native run-ios",
    "start": "react-native start",
    "test": "jest",
    "lint": "eslint ."
  },
  "dependencies": {
    "axios": "^0.19.2",
    "react": "16.11.0",
    "react-native": "0.62.0-rc.5",
    "react-native-my-fancy-library": "../react-native-my-fancy-library/"
  },
  "devDependencies": {
    "@babel/core": "^7.9.0",
    "@babel/runtime": "^7.9.2",
    "@react-native-community/eslint-config": "^1.0.0",
    "babel-jest": "^25.3.0",
    "eslint": "^6.8.0",
    "jest": "^25.3.0",
    "metro-react-native-babel-preset": "^0.59.0",
    "react-test-renderer": "16.11.0"
  },
  "jest": {
    "preset": "react-native"
  }
}

我已经试过了:

https://github.com/facebook/react-native/issues/25415

但是其中 none 解决了我的问题。

我是react-native的初学者。所以我不知道我还需要什么其他细节文件 post 在这里。如果您需要任何其他文件,请告诉我。

我遇到了同样的问题,我通过 Android Strudio 将 build.gradle 3.5.2 更新为 3.5.3 解决了这个问题。

图中显示了 android 文件夹中 build.gradle 文件依赖项中类路径的更新

对我来说,下面两个解决了它(我认为是后者做的):

  1. 重置缓存:react-native start --reset-cache
  2. 清理 Android:cd android -> ./gradlew clean

对我来说,按照以下步骤解决了这个问题 3 个步骤

  1. 将 minSdk 提高到 23
  2. 在gradle.properties中添加行: android.bundle.enableUncompressedNativeLibs=假;
  3. 在您的清单文件中添加一行: android:extractNativeLibs=true;