android opencv配置及运行时不用opencv Manager即可运行APP


  1. 准备Android-ndk Android-sdk eclipse(ADT+CDT) Java-JDK opencv android SDK软件包并配置好Java环境

  2. opencv android SDK拷贝到Android工程目录下,将OpenCV-2.4.10-android-sdk\sdk\java导入到项目

     

  3. 配置NDK

  4. 新建一个调用opencvAndroid项目,让此项目支持JNIeclipse直接编译so,之前写错了,应该是加载native的support

  5. 添加opencv依赖库

  6. 添加opencv头文件

  7. 将Android opencv SDK armeabi-v7a中的libopencv_java.so拷贝到JNI目录下并在Android.mk中添加
    #OpenCV_INSTALL_MODULES:=on
    #OPENCV_CAMERA_MODULES:=off
    OPENCV_LIB_TYPE:=SHARE
    ifeq ("$(wildcard $(OPENCV_MK_PATH))","") 
    #try to load OpenCV.mk from default install location 
    include D:/Ovationsoft/Android/lxctest/OpenCV-2.4.10-android-sdk/sdk/native/jni/OpenCV.mk 
    else 
    include $(OPENCV_MK_PATH) 
    endif 
    include $(CLEAR_VARS)
    LOCAL_MODULE := opencv_java
    LOCAL_SRC_FILES := libopencv_java.so
    include $(PREBUILT_SHARED_LIBRARY)

  8. 创建Java调用JNI的类

  9. 在OnClickListener添加:  static {
         System.loadLibrary("TongueProcess"); 
      if (!OpenCVLoader.initDebug()) {
    //   Log.i("test", "OpenCVLoader.initDebug() 失败");
      } else {
       System.loadLibrary("opencv_java");
      }
     }

  10.  

  11. 进入到项目bin/classes目录,javah包名+类名生成头文件并将头文件拷贝到JNI目录

  12. 创建CPP文件,并在Android.mk中添加

    LOCAL_MODULE   := ImgFun

    LOCAL_SRC_FILES :=com_ovation_healthmirror_utils_TestOpencv.cpp

    include$(BUILD_SHARED_LIBRARY)

  13. 直接Build Project即可生成sobuild前要把引用的第三方so库拷贝到JNI目录下做备份并在Android.mk中配置

    include$(CLEAR_VARS)


LOCAL_MODULE := BaiduMapSDK_base_v3_7_0


LOCAL_SRC_FILES :=libBaiduMapSDK_base_v3_7_0.so


include$(PREBUILT_SHARED_LIBRARY)






猜你喜欢

转载自blog.csdn.net/liu_xiao_cheng/article/details/52957471