cocos2d-x学习之五——项目中一些困难点

在项目开发中,难免遇到一些这样那样的困难,一卡就是好几天,但解决方法往往很简单,只是因为问题是初次遇见而已。在这把遇到的一些困难点记录一下,对自己对他人都有好处。

 

困难点1:cocos2d-x开发的游戏,按home键游戏退到后台,然后再按此游戏,游戏进入前台的时候,异常崩溃。崩溃点在,

 

void CCDirector::drawScene(void)
{
    ...

    // swap buffers
    if (m_pobOpenGLView)
    {
        //崩溃点 报EXC_BAD_ACCESS异常
        m_pobOpenGLView->swapBuffers();
    }
    
   ...
}

 解决方法是在,AppDelegate类的方法中添加如下代码,

// This function will be called when the app is inactive. When comes a phone call,it's be invoked too
void AppDelegate::applicationDidEnterBackground()
{
    CCDirector::sharedDirector()->pause();
    //重要 如果没有 按home切到后台 然后再切回前台 会引起崩溃
    CCDirector::sharedDirector()->stopAnimation();

    ...
}

// this function will be called when the app is active again
void AppDelegate::applicationWillEnterForeground()
{
    CCDirector::sharedDirector()->resume();
    //重要 如果没有 按home切到后台 然后再切回前台 会引起崩溃
    CCDirector::sharedDirector()->startAnimation();
    
   ...
    
    
}

 原理可以参考:http://blog.sina.com.cn/s/blog_67a5e47201017xvo.html。

 

困难点2:In-app purchase应用内支付时,模拟器测试成功,但真机测试时,报无法连接iTunes Store。我出现这个bug的原因是,真机和原有的apple id绑定了,然后程序还没有真正发布,所以用真实的(而不是测试的apple id)apple id帐户,进行支付,就会出现以上情况。

解决办法,先取消真实的apple id和机器的绑定(步骤:设置-iTunes Store和App Store-点击Apple ID-注销),然后再用测试帐户测试即可。

 

未完待续。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值