纪行:解决java.lang.UnsatisfiedLinkError: dlopen failed: library “XXX.so“ not found

错误信息:

  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,如果缺少复制进去编译一下就可以了

解决。在这里插入图片描述

如果当前方法有解决码友您的问题,请您点赞,给其他码友照亮方向.

猜你喜欢

转载自blog.csdn.net/qq_32931665/article/details/115243564