OpenCV Android开发实战的个人理解1-环境搭建
- 第一步,下载opencv-3.4.10-android-sdk
链接:https://pan.baidu.com/s/1Q4fbX4kJeTrNObIFWUGKfA
提取码:et07
复制这段内容后打开百度网盘手机App,操作更方便哦 - 第二步,解压看一下压缩包
- 第三步,进入android studio新建一个项目opencv_example_1,然后file-new-new module-import gradle project,next,选择压缩包sdk中java文件夹的位置,finish
- 第四步,file-project structure
点击Declared Dependencies下方的加号
OK
- 第五步,这里一般会报错
找到这个manifest.xml
然后将<uses-sdk android:minSdkVersion="8" android:targetSdkVersion="21" />
这句话删掉
- 第六步,找到build gradle(:app)和build gradle(:opencv库)
- 第七步,在opencv库下的build gradle进行修改,把版本和app下build gradle的版本号一致
- 第八步,找到opencv库下的libs(我这里已经新建了一个jniLibs文件夹)
复制所示目录下所有的文件夹到你定义的jniLibs路径下,我们习惯把jniLibs路径定义在app/src/main/jniLibs包下,如果jniLibs包不存在则新建一个。
- 然后在build.gradle(app)中定义jniLibs路径,代码如下:
sourceSets {
main {
jniLibs.srcDirs = ['src/main/jniLibs']
}
}
注意加的位置
点击Sync Now
- 成功
- 在MainActivity.java中加入代码
public class MainActivity extends AppCompatActivity {
private BaseLoaderCallback mLoaderCallback = new BaseLoaderCallback(this) {
@Override
public void onManagerConnected(int status) {
switch (status) {
case LoaderCallbackInterface.SUCCESS: {
Log.i(TAG, "OpenCV loaded successfully");
}
break;
default: {
super.onManagerConnected(status);
}
break;
}
}
};
@Override
protected void onResume() {
super.onResume();
if (!OpenCVLoader.initDebug()) {
Log.d(TAG, "Internal OpenCV library not found. Using OpenCV Manager for initialization");
OpenCVLoader.initAsync(OpenCVLoader.OPENCV_VERSION_3_0_0, this, mLoaderCallback);
} else {
Log.d(TAG, "OpenCV library found inside package. Using it!");
mLoaderCallback.onManagerConnected(LoaderCallbackInterface.SUCCESS);
}
}