错误信息:
java.lang.UnsatisfiedLinkError: dlopen failed: library "xxx.so" not found
或者:
java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader
[DexPathList[[zip file "/data/app/xxx-1/base.apk"],
nativeLibraryDirectories=[/data/app/xxx/lib/arm, /data/app/xxx/base.apk!/lib/armeabi-v7a, /vendor/lib, /system/lib]]]
couldn't find "xxx.so"
指向
static {
System.loadLibrary(“xxx”);
}
解决办法
检查编译项目的build gradle下都支持几种架构
ndk {
abiFilters 'armeabi", "armeabi-v7a", "arm64-v8a'
}
然后检查ndk库的build文件下如图路径下,对应是否包含上面所填写的架构模式,检查目录下是否含有缺少的.so,如果缺少复制进去编译一下就可以了