未找到Android原生库

时间:2016-12-31 05:46:48

标签: android opencv android-studio java-native-interface

我正在使用原生支持测试opencv for android。我有一个简单的应用程序,用它的canny表示来改变相机图像。

我面临的问题是它在Moto G 1st gen(Android 5.0)中运行良好,但它不适用于三星Galaxy Grand Neo(API级别17)

我得到的错误是:

  

FATAL EXCEPTION:main java.lang.UnsatisfiedLinkError:无法加载   library:soinfo_link_image(linker.cpp:1636):无法加载库   “libnn-list.so”需要“libopencv_java3.so”;引起的   load_library(linker.cpp:746):找不到库“libopencv_java3.so”

我仔细检查该文件是否存在于jniLibs/<ABI>下,还有来自商店的我的ABI应用程序检查两者都是armeabi-v7a

我没有想法。任何线索?

EDiT:添加了更多信息

我忘了提到我正在使用OpenCV for Android v3.1,如果你需要代码,你可以在这里找到它:https://github.com/leadrien/opencv_native_androidstudio

2 个答案:

答案 0 :(得分:0)

我在this stackOverflow回答中找到了解决方案。

基本上,它说的是在BaseLoaderCallback返回LoaderCallbackInterface.SUCCESS 之后调用 System.loadLibrary

同时在研究这个时,我遇到了 ReLinker v1.2 ,它表明它是一个加载本机库的强大方法。我也在考虑尝试一下。 Here你可以找到它的GitHub回购

答案 1 :(得分:-1)

请在 jniLib

中添加以下文件夹
armeabi

x86

因为两个设备都有差异处理器