Swift AVPlayer如何在音频完成时自动停止



我创建了一个按钮来播放音频(从链接流)与AVPlayer在Swift。如何在音频时间结束时自动停止音频?

下面是我的一些代码:

var player : AVPlayer?
url = URL(string: "https://cdn.islamic.network/quran/audio/128/ar.alafasy/162.mp3")
let playerItem:AVPlayerItem = AVPlayerItem(url: url!)
player = AVPlayer(playerItem: playerItem)
player?.play()

例如,在此URL (https://cdn.islamic.network/quran/audio/128/ar.alafasy/162.mp3)中,音频长度为19秒。所以在播放音频19秒后,音频必须停止。

谢谢你:)

你可以使用NSNotificationCenter Observer

NSNotificationCenter.defaultCenter().addObserver(self, selector: "playerDidFinishPlaying:", name: AVPlayerItemDidPlayToEndTimeNotification, object: item)
player?.play()

和停止播放

func playerDidFinishPlaying(note: NSNotification) {
// Your code here
player?.pause()
player?.replaceCurrentItem(with: nil)
}

最新更新