2016-11-11 51 views
1

我使用scanlibrary模块在我的项目,它工作正常,但是当我包括tess-two 6.0.4build.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"

当我从的build.gradle文件中注释掉compile 'com.rmtheis:tess-two:6.0.4' ,应用程序再次正常工作。

这是一个兼容性问题,或者我做错了什么。

我的项目结构:

Image

+0

一天我终于解决了这个问题后浪费。 tess-two库中不存在由open-cv库生成的“arm64-v8a”文件。所以我用我的应用程序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-2中,但在scanlibrary中不存在。该解决方案通过过滤成功解决问题,只使用指定的ABI。 – rmtheis