Getting “java.lang.UnsatisfiedLinkError: couldn't find DSO to load: libhermes.so” error

前端 未结 4 1084
旧时难觅i
旧时难觅i 2021-01-17 18:53

I\'m in the process of migrating a React Native project from react-native version 0.58.5 to 0.60.4.

For the Android part I\'ve done all the changes mentioned here

4条回答
  •  说谎
    说谎 (楼主)
    2021-01-17 19:24

    you can use the older version of com.facebook.soloader:soloader by adding configurations.all into your build.gradle

    configurations.all {
        resolutionStrategy {
            force "com.facebook.soloader:soloader:0.8.2"
        }
    }
    

    like this build.gradle

    buildscript {
        repositories {
            google()
            jcenter()
    
        }
        dependencies {
            classpath 'com.android.tools.build:gradle:3.5.0'
    
            // NOTE: Do not place your application dependencies here; they belong
            // in the individual module build.gradle files
        }
    }
    
    configurations.all {
        resolutionStrategy {
            force "com.facebook.soloader:soloader:0.8.2"
        }
    }
    
    allprojects {
        repositories {
            google()
            jcenter()
    
        }
    }
    
    task clean(type: Delete) {
        delete rootProject.buildDir
    }
    
    

    perform below steps if the above steps are not working

    app/build.gradle.

    android {
      ...
      // add the following packagingOptions 
      packagingOptions {
        pickFirst 'lib/x86_64/libjsc.so'
        pickFirst 'lib/arm64-v8a/libjsc.so'
      }
    }
    

    We also added the following to the defaultConfig in the app/build.gradle

    ndk {
      abiFilters 'armeabi-v7a', 'x86'
    }
    

提交回复
热议问题