在我的应用程序中,我有一个要求。我正在运行我的应用程序,并使用AVPlayerViewcontroller
播放了一个视频。在中间,我接到了电话,我接了电话,我的视频将暂停。5秒钟后,我将从服务器获取新的URL,以便在AVPlayerViewcontroller
中播放。那时新的url在后台播放,可以听见声音以及电话。在这种情况下,我想将手机应用程序发送到后台,并希望查看正在avplayer中播放的视频。
请让我知道有什么方法可以实现这一目标。
答案 0 :(得分:0)
SWIFT:
- 观察中断通知
func setupNotifications() {
let notificationCenter = NotificationCenter.default
notificationCenter.addObserver(self,
selector: #selector(handleInterruption),
name: .AVAudioSessionInterruption,
object: nil)
}
- 响应中断通知
@objc func handleInterruption(notification: Notification) {
guard let userInfo = notification.userInfo,
let typeValue = userInfo[AVAudioSessionInterruptionTypeKey] as? UInt,
let type = AVAudioSessionInterruptionType(rawValue: typeValue) else {
return
}
if type == .began {
// Interruption began, take appropriate actions
}
else if type == .ended {
if let optionsValue = userInfo[AVAudioSessionInterruptionOptionKey] as? UInt {
let options = AVAudioSessionInterruptionOptions(rawValue: optionsValue)
if options.contains(.shouldResume) {
// Interruption Ended - playback should resume
} else {
// Interruption Ended - playback should NOT resume
}
}
}
}