UnsatisfiedLinkError: dalvik.system.PathClassLoader

UnsatisfiedLinkError: dalvik.system.PathClassLoader

我正在申请 AndroidTV 并收到错误

java.lang.UnsatisfiedLinkError:
 dalvik.system.PathClassLoader[DexPathList[[zip file
 "/data/app/mytv.mytv-2/base.apk"

在 Android 6.0.1 的 NexusPlayer 上。很好奇它可以在 Android 5.1.1 的智能电视上运行。

全文错误为:

java.lang.UnsatisfiedLinkError:
 dalvik.system.PathClassLoader[DexPathList[[zip file
 "/data/app/mytv.mytv-2/base.apk"],nativeLibraryDirectories=[/data/app/mytv.mytv-2/lib/x86, /data/app/mytv.mytv-2/base.apk!/lib/x86, /vendor/lib, /system/lib]]]
 couldn't find "libnmpsdk.so"

如果有帮助。

(jniLabs 可以使用 2 个文件夹 armeabi 和 armeabi-v7a,每个文件夹都有 libnmpsdk.so)

日志显示的错误行有这部分代码:

static {
    System.loadLibrary("nmpsdk");
}

如果有人遇到过这个问题请告诉我,我还没有找到任何解决方法。

提前致谢。

所以这是针对我的案例的 UnsatisfiedLinkError 的解决方案,但我认为它是通用的。

输入gradle.properties这一行

android.useDeprecatedNdk=true;

并在 build.gradle defaultConfig 字段中的这一行

ndk {
            abiFilters "armeabi", "armeabi-v7a"
        }