Моя игра cocos2d-x вылетает при входе в фоновый режим. вот некоторый код из 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();
CCUserDefault::sharedUserDefault()->flush();
CocosDenshion::SimpleAudioEngine::sharedEngine()->pauseBackgroundMusic();
}
// this function will be called when the app is active again
void AppDelegate::applicationWillEnterForeground()
{
CCDirector::sharedDirector()->resume();
CocosDenshion::SimpleAudioEngine::sharedEngine()->resumeBackgroundMusic();
}
и сообщение об ошибке:
libGPUSupportMercury.dylib`gpus_ReturnNotPermittedKillClient:
0x3797e094: trap
0x3797e096: nop
обратите внимание, что он всегда вылетает на iPhone, но 99% вылетает на Android (хорошо, когда игра не загружает большие изображения и т. д.)
РЕДАКТИРОВАТЬ: Я пробовал CCDirector::sharedDirector()->stopAnimation(), и он отлично работает для iOS. Но все еще вылетает для Android (не сразу. При возврате обратно в приложение экран становится черным (но я думаю, что оно все еще работает, потому что фоновая музыка все еще играет. затем примерно через 5 секунд оно вылетает)
РЕДАКТИРОВАТЬ 2: Сообщение об ошибке в Eclipse:
libEGL call to OpenGL ES API with no current context (logged once per thread) (red warning text)
libc Fatal signal 11 (SIGSEGV) at 0x5f012000 (code=2) (black text)