COCOS2D那点破事记录 cocos2d 打包安卓时我遇到过的坑

1 mk 文件的编写 ,cpp文件可以直接遍历classes下面的cpp和c文件自动包含编译 这个就不说了 网上很多代码,至于包含目录 比如classes下面有一个core文件夹

那么在包含路径时加入一个core文件夹即可,包含多个目录时记得换行 加\ 并且\的后面不要又空格 否则找不到头文件,另外还有需要注意的事情,如果你是使用

visual studio工具写代码 那么比如你core下面的某个cpp文件需要包含classes之下的某个文件 那么你就要在#include "../abc.h"这样 写上完整的相对路径,

请不要手贱在vs下面设置包含目录然后直接#include "abc.h" 到时候ndk编译的时候成吨的找不到头文件 改死你 ,  mk下定义预编译指令 是通过 -D来写的 

比如 -DUSE_WEBSOCKET  这样编译的时候就会给你加上一个宏 相当于 每个代码文件里面都加入了一句#define USE_WEBSOCKET 的宏了。

第三方库文件的添加 例如 libiconv  你把iconv的文件夹拷贝到cocos2d库文件的目录里面 在libiconv的mk文件里面写好库的名字 然后在你的项目的mk文件

下面和加入cocos库一样的指令包含你的库 这样ndk编译的时候就会编译你指定的库文件生成.a文件了。


2 java文件里面使用cocos2d的sdk库的时候 发现找不到org.cocos2d.lib.xxx  打开proj.android目录下的project.properties 写入以下内容

android.library.reference.1=../cocos2d/cocos/platform/android/java 此坑解之 最好请你不要像网上说的那样直接去cocos目录下边把整个lib文件夹拷贝到自己的工程,

我打包的时候拷贝过来编译通过了 然而我运行的时候似乎是找不到入口点了,我感觉是某些代码并编译过了但是没有链接到libcocos2dcpp.so下面 

导致了程序运行时加载so文件之后调用函数时没有找到这个函数 所以就出问题了,然而有人这么干也没问题 具体情况 我也不清楚,但是最好还是添加这行代码 省事也不会出事。


3 mutildex xxxx define 错误  这个问题  可能是你的某些jar包或者java文件里面有多重定义 比如你把cocos2d http那个jar包拷贝到libs目录下边 可能就出现这个多重定义的错误,

具体原因需要你根据你自己的项目来排查错误 最笨的 一个个删 然后打包 。


4 sdk的接入 sdk的接入 我用debug编译的程序测试时微信闪退 ,当时摸头不知恼以为又是什么代码bug 找不到函数什么的,后来我发现调用微信分享的时候,一直返回失败,

说明sdk起码是没问题的,然后才发现 调用sdk需要打release签名啊,这个问题坑了我一整天时间。


5 release打包的时候如何设置签名文件 , 打开ant.properties文件 加入以下代码

key.alias.password=123
key.store.password=123
key.store=c:\abc.keystore //这里是你自己的签名文件
key.alias=androiddebugkey  


6 如何设置apk的图标和名字  , 名字设置 打开proj.android/res/values/string.xml  里面有一个字段叫做app_name  将该字段对应的value设置为你想要的名字即可,

图标设置 将proj.android/res下所有文件夹的icon.png设置为你自己想要的图标即可。


遇到过的问题大致就这些吧 还有许多细节问题 一时想不起了就不写了,填完一个坑又是另外一个坑,目前我正在苦恼如何调试安卓的程序最好是cpp源码级别调试,

用visualgdb经常会出现错误什么的 我也不知道是什么错误 反正就是无法调试,有些机器又可以调试成功,eclipse臣妾不会用啊...... 洗洗睡了....


(译)cocos2d里面如何用texture picker和像素格式来优化spritesheet.pdf (译)在cocos2d里如何制作各种按钮.pdf (译)如何使用cocos2d制作基于tilemap的游戏教程 第一部分.pdf (译)如何在cocos2d里面使用动画和spritesheet.pdf (译)如何用cocos2d制作iphone游戏:旋转炮塔.pdf (译)如何用cocos2d制作iphone游戏:更猛的怪物和更多得管卡.pdf (译)如何使用cocos2d制作一个Slide Image Game:第一部分.pdf (译)如何使用cocos2d来制作一个塔防游戏:第一部分.pdf cocos2d 2.0 添加遮罩.pdf iOS Code Signing解惑.pdf iPhone上面的现实增强(Augmented Reality)入门教程.pdf OpenGL ES2.0 – Iphone开发指引.pdf OpenGLES2.0 Iphone开发指引:第二部分,纹理贴图.pdf 使用cocos2d和box2d制作滚动背景.pdf 加入敌人和战斗:如果使用cocos2d制作基于tiled地图的游戏:第三部分.pdf 在cocos2d里面如何使用物理引擎box2d:弹球.pdf 在cocos2d里面如何拖拽精灵.pdf 如何使用box2d来做碰撞检测(且仅用来做碰撞检测).pdf 如何使用CCRenderTexture来创建动态纹理.pdf 如何使用cocos2d1.0来给sprite添加Mask(遮罩).pdf 如何使用cocos2d制作一个塔防游戏:引子.pdf 如何使用cocos2d制作一个太空射击游戏.pdf 如何使用cocos2d制作一个打地鼠的游戏:(第二部分。完).pdf 如何使用cocos2d和box2d来制作一个Breakout游戏:第一部分.pdf 如何使用cocos2d和box2d来制作一个Breakout游戏:第二部分(完).pdf 如何使用cocos2d来制作一个打地鼠的游戏:第一部分.pdf 如何使用GameCenter制作一个简单的多人游戏教程:第一部分.pdf 如何使用GameCenter制作一个简单的多人游戏教程:第二部分.pdf 如何使用NSCoding和NSFileManager来保存你的应用程序数据.pdf 如何制作一个类似tiny wings的游戏:第一部分.pdf 如何制作一个类似tiny wings的游戏:第二部分(完).pdf 如何升级你的cocos2d版本.pdf 如何学好Iphone开发.pdf 如何查找资料.pdf 碰撞检测和收集物品:如何使用cocos2d制作基于tiled地图的游戏:第二部分.pdf (译)cocos2d精灵教程:第一部分.pdf (译)cocos2d精灵教程:第三部分.pdf (译)cocos2d精灵教程:第二部分.pdf (译)cocos2d菜单教程:第一部分.pdf (译)cocos2d菜单教程:第三部分(完).pdf (译)cocos2d菜单教程:第二部分.pdf (译)使用cocos2d和box2d来制作一个platformer游戏.pdf (译)如何使用cocos2d制作一个塔防游戏:第三部分.pdf (译)如何使用cocos2d制作一个塔防游戏:第二部分.pdf (译)如何使用cocos2d制作一个塔防游戏:第四部分(完).pdf (译)如何使用cocos2d制作一个滑动图片游戏教程:第二部分(完).pdf (译)如何用cocos2d制作一款简单的iphone游戏(第一部分).pdf
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值