UnsatisfiedLinkError: dalvik.system.PathClassLoader

Я делаю приложение для AndroidTV и получаю ошибку

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

на NexusPlayer с Android 6.0.1. Любопытно, что он работает на Smart TV с 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");
}

Если кто-то сталкивался с этой проблемой, пожалуйста, дайте мне знать, я еще не нашел ничего, что решает ее.

Заранее спасибо.

1 ответ

Решение

Так что это решение для UnsatisfiedLinkError для моего случая, но я думаю, что оно общее.

Поместите в gradle.properties эту строку

android.useDeprecatedNdk=true;

и в build.gradle эту строку в поле defaultConfig

ndk {
            abiFilters "armeabi", "armeabi-v7a"
        }
Другие вопросы по тегам