2011-03-25 33 views
0

间歇运行我的程序,而它崩溃了:[NSPathStore2 finishedPlaying]:无法识别的选择发送到实例

*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** -[NSPathStore2 finishedPlaying]: unrecognized selector sent to instance 0x286e20'

根据网上有可用的零文档此功能让我转交给你显赫堆栈溢出。

它有点似乎与使用CocosDenshion库加载/播放声音一致。我无法确定究竟在哪里(如果是的话),因为它在我踏入时似乎从未发生过。

这是在安装了3.1.3的第一代iPod Touch上测试的结果。该程序完美地运行在iOS 3.2及以上版本的设备上。

回答

0

为我工作的解决方案是:

AVAudioPlayer_Instance.delegate = nil; 

AVAudioPlayer_Instance是你的AVAudioPlayer实例,这应该dealloc之前被调用。

2

不好意思碰到这个老话题,但我一直在同一个问题上挣扎了几个星期,并想分享我的经验。

我的用户的很小比例越来越格式的致命例外: “[__NSCFNumber finishedPlaying:]:无法识别的选择发送到实例0x1fa8ed40” 这似乎仅限于iOS 6的设备,但它已经不可能调试,因为我不能自己重现它。

我相信另外两个答案是吠叫错误的树。两者都表明该问题与AVAudioPlayer委托相关,这是The reason behind crash in AVAudioPlayer finishedPlaying after upgrade to iPhone 3.0 OS中讨论的问题。但是您会注意到,在这种情况下,finishedPlaying方法已成功调用,并且与audioPlayerDidFinishPlaying:方法有关的异常。

在这个问题它是finishedPlaying:选择不被确认,这意味着它是AVAudioPlayer本身谁是不再有效,而其委托。

在这种认识现在我认为这个问题是AVAudioPlayer被错误地管理(我是用一种非ARC辅助类:NTAVManager)的结果。我已经更新了课程以使用ARC,并希望这可以解决我的问题,但正如我所说,我从来没有能够自己复制它,所以我将无法确认几个星期。

相关问题