2016-11-11 2 views
1

Я использую scanlibrary модуль в моем проекте, и он работает отлично, но когда я включаю tess-two 6.0.4 в build.gradle файл, он генерирует следующее сообщение об ошибке:UnsatisfiedLinkError во время выполнения

java.lang.UnsatisfiedLinkError: com.android.tools.fd.runtime

nativeLibraryDirectories=[/data/app/com.scanner.demo-1/lib/arm64, /data/app/com.scanner.demo-1/base.apk!/lib/arm64-v8a, /vendor/lib64, /system/lib64]]] couldn't find "libopencv_java3.so"

Когда я закомментируйте compile 'com.rmtheis:tess-two:6.0.4' из файла build.gradle , приложение снова работает отлично.

Это проблема совместимости, или я делаю что-то неправильно.

Мои Структура проекта:

Image

+0

Потратив день я наконец-то решил. Файл «arm64-v8a», сгенерированный библиотекой open-cv, отсутствует в библиотеке tess-two. Поэтому я использовал это в своем файле build.gradle приложения, чтобы исключить конкретную папку. abiFilters "armeabi-v7a", "x86", "armeabi", "mips" –

ответ

1

Я использовал "abiFilters" в файле build.gradle приложения, чтобы решить эту проблему.

defaultConfig{ ******** ndk{ abiFilters "armeabi-v7a", "x86", "armeabi", "mips" } }

Если структура проекта выглядеть иначе, вы можете попробовать this

+0

Хорошее решение. Проблема в том, что файлы общих объектов для 64-разрядных ABI (arm64-v8a, mips64, x86_64) присутствуют в tess-two, но отсутствуют в scanlibrary. Это решение успешно работает вокруг проблемы, фильтруя только для использования указанных ABI. – rmtheis

Смежные вопросы