android studio加载so文件报错:dalvik.system.PathClassLoadero

提示dalvik.system.PathClassLoadero ············ can not find ‘xxx.so’

首先看一下项目中有没有这个文件夹:(有的话就跳过这一步)
android studio加载so文件报错:dalvik.system.PathClassLoadero_第1张图片
如果没有,切换到project视图,在app目录下新建一个目录,名字可以随便起,libs是我建的文件夹
android studio加载so文件报错:dalvik.system.PathClassLoadero_第2张图片

然后再build.gradle的 android里边加入下面的代码后重新build

    sourceSets {
        main {
            jniLibs.srcDirs = ['新建文件夹的名字']
        }
    }

成功后切换到android视图,可以看见一个名为jniLibs的文件夹
android studio加载so文件报错:dalvik.system.PathClassLoadero_第3张图片

然后把so文件拷贝到这个文件夹里边就行。(.so文件一般被放在arm64-v8a x86 等名字的文件夹里边,拷贝的时候要连同文件夹一起放到jniLibs里边,不要只拷贝so文件!)

如果已经有jniLibs文件夹还出现这个问题,在 build.gradle里边的android属性下再加入这么一段基本就ok了:

    defaultConfig {
        ndk {
            abiFilters "armeabi", "armeabi-v7a", "x86", "mips"
        }
    }

最后感谢一下谷歌~

你可能感兴趣的:(成长之路,java,Android)