在cocos2d引擎中安卓开发引用第三方库(如Opencv)
来源:互联网 发布:淘宝网费列罗巧克力 编辑:程序博客网 时间:2024/06/16 20:56
对于一个只懂得如何用Java去调用C++来实现某一种效果的初学者来说,Android编程中jni目录下的Android.mk这
样的配置文件几乎是完全有理解障碍的。
Android.mk是eclipse告诉它的插件NDK如何去编译C语言编写的源文件,有点像linux下编译C程序的makefile
,其实差不多。第一次见到其实是吓一跳的。不过还好上网能找到点相关的东西。其实Android编程一般是用不到Android.mk,因为Android的SDK已经功能很强大了,不需要C++什么事。但是对于游戏开发而言,为了保证应
用的高效等一些性能,还是经常要使用C++语言去写,或者说游戏开发引就是C++写的。好了,废话有点多,进
入正题吧!(PS:只是些基础,几个月以前接触的,不知道还记得多少,仅仅只是记录,怕忘了)
LOCAL_PATH :=
LOCAL_MODULE := opencv_java //引用的动态库的模块名,这里我需要调用opencv(开源图像处理平台)
的动态链接库,
LOCAL_SRC_FILES := libso/libopencv_java.so //库名
include $(PREBUILT_SHARED_LIBRARY)
include $(CLEAR_VARS)//下面是编译opencv的环境配置LOCAL_ARM_NEON := trueOpenCV_INSTALL_MODULES:=onOPENCV_CAMERA_MODULES:=off//在c++中调用opencv要想在eclipse中编译通过必须添加opencv的配置文件OpenCV.mk,不然NDK在编译的//是安卓版(只有在这个版本才有Opencv.mk)的include $(LOCAL_PATH)/../../sdk/native/jni/OpenCV.mk//这里就是我的游戏中用到的cocos2d游戏开发引擎需要的原文件目录$(call import-add-path,$(LOCAL_PATH)/../../cocos2d)$(call import-add-path,$(LOCAL_PATH)/../../cocos2d/external)$(call import-add-path,$(LOCAL_PATH)/../../cocos2d/cocos)//指定游戏编译模块LOCAL_MODULE := cocos2dcpp_shared//C程序生成的动态链接库,其实在这个游戏中Android部分的代码就是在调用下面用//C++写的源程序生成的库,自己只是一个包装LOCAL_MODULE_FILENAME := libcocos2dcpp//这里就是需要编译C++的源程序文件了。LOCAL_SRC_FILES := hellocpp/main.cpp \ ../../Classes/AppDelegate.cpp \ ../../Classes/HelloWorldScene.cpp \ ../../Classes/GameLoadResource.cpp \ ../../Classes/GameDescribeSence.cpp \ ../../Classes/GameSence.cpp \ ../../Classes/makeMouse.cpp \ ../../Classes/makeMouseSence.cpp \ ../../Classes/mouse.cpp \ ../../Classes/OperationSence.cpp//这里是cpp文件引用的头文件所在的目录LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../Classes \ $(LOCAL_PATH)/../../sdk/native/jni/include# _COCOS_HEADER_ANDROID_BEGIN# _COCOS_HEADER_ANDROID_END//LOCAL_LDLIBS += -lm -llog //以静态的模式加载.a库文件LOCAL_STATIC_LIBRARIES := cocos2dx_staticLOCAL_SHARED_LIBRARIES := opencv_java# _COCOS_LIB_ANDROID_BEGIN# _COCOS_LIB_ANDROID_ENDinclude $(BUILD_SHARED_LIBRARY)include $(CLEAR_VARS)//加载.so库LOCAL_SHARED_LIBRARIES := opencv_java $(call import-module,.)//调用库# _COCOS_LIB_IMPORT_ANDROID_BEGIN# _COCOS_LIB_IMPORT_ANDROID_END这些写完之后,还需要在Application.mk中指定编译C++的编译选项比如:APP_CPPFLAGS := -frtti -fexceptions -DCC_ENABLE_CHIPMUNK_INTEGRATION=1 -std=c++11 -fsigned-char我完全不懂它是什么意思,这里就不献丑了。
0 0
- 在cocos2d引擎中安卓开发引用第三方库(如Opencv)
- ionic2开发(二)在TypeScript中引用第三方js库
- 在Android Studio中引用第三方库
- iOS开发 引用第三方库出现duplicat…
- Eclipse中Android开发引用第三方库
- android 引用第三方库
- AndroidStudio 引用第三方库
- Ubuntu 环境下 CPP文件中 加入第三方库 如OpenCV库、PCL库
- 关于引用.so(在使用第三方的SDK时,使用库跟.so)
- android开发如何引用第三方包
- cocos2d-x 3.0 引用第三方库 及编译成apk时android mk文件写法
- cocos2d-x 3.0 引用第三方库 及编译成apk时android mk文件写法
- cocos2d-x 3.0 引用第三方库 及编译成apk时android mk文件写法
- cocos2d-x 3.0 引用第三方库 及编译成apk时android mk文件写法
- cocos2d-x 3.0 引用第三方库 及编译成apk时android mk文件写法
- cocos2d-x 3.0 引用第三方库 及编译成apk时android mk文件写法
- cocos2d-x 3.0 引用第三方库 及编译成apk时android mk文件写法
- cocos2d-x 3.3 引用第三方库 及编译成apk时android mk文件写法
- 正则表达式笔记(第二弹:JAVA中正则表达式的应用)
- MFC编译问题c1083
- 对象与继承
- 黑马程序员-JAVA基础之IO流(2)
- 如何抓取BT天堂电影数据
- 在cocos2d引擎中安卓开发引用第三方库(如Opencv)
- Python脚本利用openoffice将office文档转为html或者pdf。
- [HDU 4324]Triangle LOVE[找环]
- 4)Win10-UWA开发 创建第一个应用 “Hello, world” (XAML/C#)
- maven error: unmappable character for encoding ASCII
- Polymer 1.0 升级指南
- HTML中块级元素和行内元素
- c++:自动获取数据类型,auto与decltype的异同
- Emacs linux C 代码风格配置