我的AudioStreamer有问题,这让我抓狂。我有一个包含来自远程服务器的歌曲的表视图。当我点击一首歌时,它可以很好地播放,但如果我点击得太快,我会看到AudioStreamer的多个实例在播放不同的歌曲。
我听说将AudioStreamer作为一个单例可以解决这个问题,但我尝试过,但它经常崩溃。有人面对过这个问题并找到了解决方案吗?
谢谢。
更新:
这个问题的解决方案是从-(void)stop方法中删除这一行。还将任何表示状态的内容更改为自我状态
if(state==AS_WAITING_FOR_DATA | | state==AS _STARTING_FILE_THREAD)
回来
这个问题的解决方案是从-(void)stop方法中删除此行。还可以将任何表示state的内容更改为self-state
if(state==AS_WAITING_FOR_DATA | | state==AS _STARTING_FILE_THREAD)回来
我在另一篇文章中创建了解决方案。但以防万一,我做错了什么。
stackoverflow的另一篇帖子指向了以下链接。我之前遵循了该链接中的解决方案,但并非完全遵循。我错过了代码下面最重要的部分。
https://github.com/mattgallagher/AudioStreamer/issues/26
"需要变量pausedByInterruption,因为我们只想在音频因中断而暂停的中断后恢复播放。因此,需要在以下方法中将ivar pausedByByInterrupt设置为NO:暂停、启动,停止和initWithUrl。"
让我重复一遍,确保您完成这一部分"ivar pausedByInterruption需要在以下方法中设置为NO:暂停、启动,停止和initWithUrl。"
这样做之后,我的问题得到了解决。