android studio导入opencv人脸识别案例的一些报错

来源:互联网 发布:启信宝的数据可信度 编辑:程序博客网 时间:2024/06/07 16:27

opencv在导入官方人脸识别案例的时候,一直报一个错误

java.lang.UnsatisfiedLinkError: Couldn't load detection_based_tracker from loader dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/com.example.administrator.opencvforandroid-1.apk"],nativeLibraryDirectories=[/data/app-lib/com.example.administrator.opencvforandroid-1, /vendor/lib, /system/lib]]]: findLibrary returned null

是说执行这个代码System.loadLibrary("detection_based_tracker");找不到so文件

然后我用ndk-build命令重新生成了一下

这里写图片描述

可以看出已经生成成功了

然后我再src/main下建了一个jniLibs的文件夹把so文件复制进去,发现仍然报这个错误

郁闷了半天,在网上也没找到具体的方法

最后发现问题

大家看我的application.mk文件

APP_STL := gnustl_staticAPP_CPPFLAGS := -frtti -fexceptionsAPP_ABI := armeabi-v7aAPP_PLATFORM := android-25

我在这里明确了CPU的架构平台是armeabi-v7a,也就是生成的是这个平台架构的so文件,所以在jniLibs的文件夹下还要再建一个文件夹叫armeabi-v7a,把so文件放进去如图

这里写图片描述

再编译运行,完美

还有一个点要注意在android.mk文件中,在如图红框中的路径,改成自己下载的opencv sdk路径

这里写图片描述

2 0
原创粉丝点击