cocos2dx3.2项目移植andriod总结

大渣好,我是PuzzledBoy,今年大一,我是一名独立游戏开发者。这是我的第二篇博客,欢迎你们的来袭。。。(这话有点不对啊= =)

额,总之这会是一篇比较长的文章,总结一下我前两天将cocos2dx3.2 项目移植到渣卓平台出现的各种问题(我恨渣卓)。

一来是相当于自己复习一下酱紫,而来就是写给你们看啦啦啦~(废话)。

当然也会说一点其他的内容,就算你和标题没有任何关系(好像有语病。。。)也是可以往下看的,说不定会学到一点其他的东西。呵呵呵呵呵。。。。。


首先第一个部分是把C++工程打包成apk

//============================================================================渣卓黑分隔线=============================================================================


首先呢,C++ 工程移植到渣卓,哦不,安卓平台= =。 当然是要跟android ndk扯上一点关系了,详细的介绍度娘说的很清楚了 博主就懒得再复制黏贴了。咳咳。。。

哎这里先说一下几个概念...

.o 目标文件,相当与window下的.obj文件。

.so (shared object) 共享库,相当于window下的dll。

.a 静态库,用于静态链接,相当于windoiw的静态lib了。

其实概念跟windos上是相同的,不知道windows上的静态库和动态库是什么的童鞋去问度娘吧。

然后,博主的项目用到了第三方库(lua)(不是引擎官方的那个lua,我只是纯粹用lua来做配置文件),酱紫就有个问题了,如果没有引入第三方库的话,我们可以直接更改Android.mk文件的配置信息然后用命令行来进行android打包。


首先我们打开Android.mk文件,路径是 “ 你的工程目录/proj.android/jni/Android.mk "

这是一个脚本文件,先别急着说看不懂。首先mk文件是用来向android ndk描述你的C++源代码的。其次我们来聊一下里面几个关键字的意义(详细的结构由于篇幅就不复制度娘的了,可以自己去查)。

LOCAL_PATH := $(call my-dir)  //call my-dir就是你的mk文件所在的目录。

include $(CLEAR_VARS) //这里是清除一些全局变量。

$(call import-add-path,$(LOCAL_PATH)/../../cocos2d)
$(call import-add-path,$(LOCAL_PATH)/../../cocos2d/external)
$(call import-add-path,$(LOCAL_PATH)/../../cocos2d/cocos)  //你可以打开到相应的文件夹去看看,里面有一个Android.mk文件耶
                                                            //好了,你一定懂了这里的路径是用来干吗了的吧 = =。
LOCAL_MODULE := cocos2dcpp_shared //模块类型,这里是共享库。

LOCAL_MODULE_FILENAME := libcocos2dcpp // 模块的名字。

LOCAL_SRC_FILES := hellocpp/main.cpp \
                   ../../Classes/AppDelegate.cpp \  
                      # 省略了很多代码          //这里是用来描述你的cpp文件的,写上你的cpp路径就好啦。


 LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../Classes 
LOCAL_C_INCLUDES += $(LOCAL_PATH)/../../cocos2d  //顾名思义,就是头文件的目录啦。

LOCAL_WHOLE_STATIC_LIBRARIES := cocos2dx_static
LOCAL_WHOLE_STATIC_LIBRARIES += cocosdenshion_static 
# LOCAL_WHOLE_STATIC_LIBRARIES += box2d_static
# LOCAL_WHOLE_STATIC_LIBRARIES += cocosbuilder_static
# LOCAL_WHOLE_STATIC_LIBRARIES += spine_static
# LOCAL_WHOLE_STATIC_LIBRARIES += cocostudio_static
# LOCAL_WHOLE_STATIC_LIBRARIES += cocos_network_static
# LOCAL_WHOLE_STATIC_LIBRARIES += cocos_extension_static   //这里指明的是当前模块需
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值