我正在开发一个包含音乐和声音效果的应用程序,所以我正在使用AVPlayer,我遇到了一个非常奇怪的错误,它只会影响模拟器。
因此,在应用程序的其中一个屏幕中,有背景播放的音乐。所以在那个屏幕上,我有AVPlayer设置并启动歌曲。昨天工作正常,但今天在模拟器上运行应用程序时,会抛出此异常
然而,应用程序没有崩溃,如果我按几次继续按钮,应用程序继续运行。但它在模拟器上进行调试非常令人沮丧,因为每次打开此屏幕都会发生这种情况。设备上不会发生此问题。
陌生人是,我昨天在AVPlayer这个应用程序上遇到了类似的问题。我无法弄清楚问题出在哪里,所以我开始将代码逐个复制到一个新项目,直到整个事情被复制过来,并且这个问题没有发生。然后今天,问题再次开始。如果我将此代码复制到另一个项目,它将在模拟器上运行一段时间,但最终会再次弹出此问题。
有没有其他人在使用AVPlayer的模拟器上遇到过这类问题?有什么方法可以解决这个问题吗?任何帮助将不胜感激
编辑:以防万一,这里是AVPlayer如何设置的代码
var songPlayerItem : AVPlayerItem?
var songPlayer : AVPlayer?
func startSong()
{
let url = NSURL.fileURLWithPath(NSBundle.mainBundle().pathForResource(song!.id, ofType: "mp3")!)
songPlayerItem = AVPlayerItem(URL: url)
NSNotificationCenter.defaultCenter().addObserver(self, selector: #selector(self.itemDidFinishPlaying(_:)), name: AVPlayerItemDidPlayToEndTimeNotification, object: songPlayerItem)
songPlayer = AVPlayer(playerItem: songPlayerItem!)
songPlayer?.play()
}
func itemDidFinishPlaying(notification : NSNotification)
{
print("SongFinished")
}