当前位置:   article > 正文

java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader错误记录

java.lang.unsatisfiedlinkerror: dalvik.system.pathclassloader[dexpathlist[[z

Android studio版本3.6
NDK开发过程这个问题就是没有找到对应so库造成的
完整的错误日志

java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/com.pbph.ffmpegdemo-JyNw8Rk8pViQBFoHfRx06g==/base.apk"],nativeLibraryDirectories=[/data/app/com.pbph.ffmpegdemo-JyNw8Rk8pViQBFoHfRx06g==/lib/arm64, /system/lib64, /system/vendor/lib64, /system/vendor/lib64/hw]]] couldn't find "libnative-lib.so"
  • 1

根据日志就是没找到这个native-lib这个so库
首先查看apk
在这里插入图片描述
发现lib下有这个so库
问题出现在build.gradle

android {
    compileSdkVersion 29
    buildToolsVersion "29.0.3"

    defaultConfig {
        applicationId "com.pbph.ffmpegdemo"
        minSdkVersion 19
        targetSdkVersion 29
        versionCode 1
        versionName "1.0"

        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
        //这个没有添加导致报错,这个是在打包的时候选择cpu架构,因为编译的时候只有armeabi-v7a,所以运行的时候也要加上这个限制
        ndk {
            abiFilters  "armeabi-v7a"
        }
        externalNativeBuild {
            cmake {
                cppFlags ""
                abiFilters 'armeabi-v7a'
            }
        }
    }

    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
        }
    }

    externalNativeBuild {
        cmake {
            path "src/main/cpp/CMakeLists.txt"
            version "3.10.2"
        }
    }


}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/盐析白兔/article/detail/143260
推荐阅读
相关标签
  

闽ICP备14008679号