cocos2dx 手机从Andriod2.2系统升到4.0.3引起的闪退问题
写的代码编译好版本安装在手机上,手机没刷新系统之前一切良好,升完级之后进入主游戏界面就闪退,一点点定位,居然问题出自于初始化...
测试机 魅族M9 系统Andriod 版本4.0.3
logcat提示问题 Fatal signal 11 (SIGSEGV) at 0x00000000 (code=1)
定位原因
CCLabelAtlas::create("","ui/BloodSub.png",c_szBloodItem.width,c_szBloodItem.height,'/');
CCLabelAtlas创建时第一个参数要求提供参考字符串,我以为不重要就置为空了,而且在其它手机以及Windows上运行良好,一直没出现过问题
结果手机升版本后突然因为这样的问题而闪退,同时同事的手机不会出现闪退问题但是会警告某些顶点对象内存分配不成功..
而改上面的代码为下面的代码之后.代码终于运行正常,也没有警告了.
CCLabelAtlas::create("/0123456789","ui/BloodSub.png",c_szBloodItem.width,c_szBloodItem.height,'/');
真是太大意了.而且因为偷懒没有去看CCLabelAtlas的实现,没有理解参数的意义,记一笔.
顺便报怨一下.Cocos2d::CCLabelAtlas底层还是不够严谨啊..