10

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

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

提前致谢。

4

1 回答 1

27

所以这是我的情况下 UnsatisfiedLinkError 的解决方案,但我认为它是一般的。

放入 gradle.properties 这一行

android.useDeprecatedNdk=true;

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

ndk {
            abiFilters "armeabi", "armeabi-v7a"
        }
于 2016-06-23T11:46:44.997 回答