UnsatisfiedLinkError:dalvik.system.PathClassLoader

Vla*_*mir 7 android android-tv nexus-player

我正在为AndroidTV制作申请并收到错误

java.lang.UnsatisfiedLinkError:
 dalvik.system.PathClassLoader[DexPathList[[zip file
 "/data/app/mytv.mytv-2/base.apk"
Run Code Online (Sandbox Code Playgroud)

在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"
Run Code Online (Sandbox Code Playgroud)

如果有帮助.

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

日志显示的错误行包含以下部分代码:

static {
    System.loadLibrary("nmpsdk");
}
Run Code Online (Sandbox Code Playgroud)

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

提前致谢.

Vla*_*mir 20

所以这是针对我的案例的UnsatisfiedLinkError的解决方案,但我认为这是一般的.

将此行放入gradle.properties中

android.useDeprecatedNdk=true;
Run Code Online (Sandbox Code Playgroud)

在build.gradle中,在defaultConfig字段中输入此行

ndk {
            abiFilters "armeabi", "armeabi-v7a"
        }
Run Code Online (Sandbox Code Playgroud)

  • 这篇文章有一些描述:https://medium.com/mobiwise-blog/unsatisfiedlinkerror-problem-on-some-android-devices-b77f2f83837d (4认同)