Cocos2d iphone Xcode:alcMakeContextCurrent中的sigABRT

Cocos2d iphone Xcode:alcMakeContextCurrent中的sigABRT,cocos2d-iphone,xcode5,game-center,Cocos2d Iphone,Xcode5,Game Center,我在摆弄游戏中心的排行榜。在感到沮丧之后,我只是删除了我添加的代码。然而,我现在被这个错误缠住了,即使我删除了它!感觉就像我毁了一场完美的比赛 具体而言,以下是发生错误的时间: 1我正在使用cocos2d。 2我复制并粘贴到我的项目中,然后我将.h导入到我的第一个cocos2d场景中。 3然后我得到了sigABRT错误,并决定删除导入。然而,错误依然存在。 4然后我从项目中完全删除了GK身份验证文件。但是,错误仍然存在 + (bool) makeContextCurrent:(ALCcontex

我在摆弄游戏中心的排行榜。在感到沮丧之后,我只是删除了我添加的代码。然而,我现在被这个错误缠住了,即使我删除了它!感觉就像我毁了一场完美的比赛

具体而言,以下是发生错误的时间: 1我正在使用cocos2d。 2我复制并粘贴到我的项目中,然后我将.h导入到我的第一个cocos2d场景中。 3然后我得到了sigABRT错误,并决定删除导入。然而,错误依然存在。 4然后我从项目中完全删除了GK身份验证文件。但是,错误仍然存在

+ (bool) makeContextCurrent:(ALCcontext*) context deviceReference:(ALCdevice*) deviceReference
{
    @synchronized(self)
    {
        if(!alcMakeContextCurrent(context)) //sigABRT occurs here
        {
            if(nil != deviceReference)
            {
                CHECK_ALC_CALL(deviceReference);
            }
            else
            {
                OAL_LOG_ERROR(@"Could not make context %p current.  Pass in a device reference for better diagnostic info.", context);
            }
            return NO;
        }
    }
    return YES;
}
奇怪的是:模拟器导致了这个错误,但在手机上它工作得很好

这显然和音频有关?!。我不知道这和什么有关系。这似乎是一个突然的错误。以下是来自控制台的错误消息:

cocos2d: GL supports discard_framebuffer: YES
cocos2d: GL supports shareable VAO: NO
AudioStreamBasicDescription:  2 ch,  44100 Hz, 'lpcm' (0x00000029) 32-bit little-endian float, deinterleaved
2014-03-10 15:04:43.058 GaUi[40423:907]  <com.apple.main-thread> Start: Mach message timeout. Apparently deadlocked. Aborting now.
(lldb) 

我的Mac Book Pro和Mac Mini也有同样的问题,重新启动电脑可以解决问题。

你在播放什么声音文件?如果是音效而不是音乐,则应为单声道信息“2 ch”表示是立体声效果,显然是由于MacBook Air中的错误。有时,当它从睡眠模式恢复时,音频不工作,因此会导致模拟器出错。我重新启动了电脑,它工作正常。这对我来说是个音频问题。看看这个答案: