在Android项目中使用本机库会导致生成错误

时间:2019-01-24 00:46:55

标签: android gradle face-recognition

我想在我的Android项目中使用此face recognition library,因此我已经在我的build.gradle中添加了该库。但是当我构建项目时,它会引发此错误:

More than one file was found with OS independent path 'lib/armeabi-v7a/libopencv_java3.so'

我尝试将其添加到应用程序android {}中的build.gradle

packagingOptions {
    pickFirst 'lib/arm64-v8a/libopencv_java3.so'
}

并用pickFirst更改了exclude,但是在重建时它仍然返回相同的错误。

我已经读过要使用本机库,需要创建一个jni文件夹并将本机库代码放在此处,这是正确的吗?如果是这样,我需要将哪些文件放在那里?就我而言,该库是用Java编写的,并且是有效的Android库,只是它使用了本机方法。

更新:我知道从库文件夹中添加了jnilibsobj,就像这样:

enter image description here

并指定

sourceSets.main {
    jniLibs.srcDir 'src/main/libs'
    jni.srcDirs = []
}

但是在构建时仍然存在类似的错误:

More than one file was found with OS independent path 'lib/arm64-v8a/libopencv_java3.so'

有解决方案吗?

0 个答案:

没有答案