【发布时间】:2011-06-20 22:47:34
【问题描述】:
我需要:
- 播放声音
- 循环
- 继续在后台播放
AVAudioPlayer 一切正常,但现在我必须使用AVPlayer 来播放 iPod 库中的音乐歌曲。但是有一个大问题:AVPlayer 没有numberOfLoops 中的AVAudioPlayer 属性。
好的,你可以为AVPlayerItemDidPlayToEndTimeNotification注册一个通知到NSNotificationCenter(或者你也可以使用addBoundaryTimeObserverForTimes方法,指定时间等于歌曲时长)当歌曲播放到结束时得到通知.
但这只有在应用程序在前台时才有效,在后台歌曲继续播放,但在结束时停止。
通知也在后台收到(通过 NSLog 检查),但是选择器的代码:
AVPlayerItem *playerItem = [notification object];
[playerItem seekToTime:kCMTimeZero];
...没有效果,歌曲不循环播放。
有什么建议吗?
【问题讨论】:
标签: loops background avaudioplayer avplayer