如果您不想使用JavaCV,则对我有效。
第1步-下载资源
从http://opencv.org/downloads.html下载OpenCV Android SDK
第2步-将OpenCV二进制文件复制到您的APK
从以下位置复制libopencv_info.so和libopencv_java.so
OpenCV-2.?.?-android-sdk -> sdk -> native -> libs -> armeabi-v7a
至
Project Root -> Your Project -> lib - > armeabi-v7a
压缩lib文件夹,然后将该zip重命名为every-v7a.jar。
复制此.jar文件并将其放在您的项目中的此处
Project Root -> Your Project -> libs
将此行添加到您的项目build.gradle的“依赖项”部分中
compile files('libs/whatever-v7a.jar')
现在编译时,您可能会发现.apk大约大4mb。
(如果您也想支持ARMv6,请重复“ armeabi”,可能不再需要。)
第3步-将Java SDK添加到您的项目
从这里复制java文件夹
OpenCV-2.?.?-android-sdk -> sdk
至
Project Root -> Your Project -> libs
(与您的.jar文件相同的位置);
(您可以将“ java”文件夹名称重命名为“ OpenCV”)
在这个新复制的文件夹中,添加一个典型的build.gradle文件。我用这个:
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.6.+'
}
}
apply plugin: 'android-library'
repositories {
mavenCentral();
}
android {
compileSdkVersion 19
buildToolsVersion "19"
defaultConfig {
minSdkVersion 15
targetSdkVersion 19
}
sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'
java.srcDirs = ['src']
resources.srcDirs = ['src']
aidl.srcDirs = ['src']
renderscript.srcDirs = ['src']
res.srcDirs = ['res']
assets.srcDirs = ['assets']
}
}
}
在您的项目根目录settings.gradle文件中进行更改,它看起来也像这样:
include ':Project Name:libs:OpenCV', ':Project Name'
在依赖项部分的项目根目录->项目名称-> build.gradle文件中,添加以下行:
compile project(':Project Name:libs:OpenCV')
第4步-在项目中使用OpenCV
进行重建,您应该可以在项目中导入并开始使用OpenCV。
import org.opencv.android.OpenCVLoader;
...
if (!OpenCVLoader.initDebug()) {}
我知道这是否有点破解,但我认为我还是会发布它。