java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList

java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList

我从 jni 开始,并尝试让一个简单的 HelloWorld 示例正常工作。我有一个链接错误,我猜这与我的本地库没有指向正确的文件路径有关。

我必须使用命令: java -Djava.library.path= ??

我要将其设置为什么?我所有的 so 文件都在 app/src/main/libs/armeabi/libHelloJni.so 、 libs/x86/libHelloWorld.so 等等。

我目前在做:

static {
   System.loadLibrary("HelloJni")
}

.so 文件应放在 app/src/main/jniLibs/ 文件夹中。在你的例子中,它应该是 app/src/main/jniLibs/armeabi/libHelloJni.so。

我确定应用程序的 build.gradle 没问题,我的 *.so 也没问题。阅读官方文档后,我的问题来自 Android Studio 3.0 并遇到此问题

转到 运行 -> 编辑配置 -> 分析,然后禁用 "Enable advanced profiling"。

这对我有用