我正在为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"
        }

10-08 06:02