美文网首页
swift 音频被中断处理

swift 音频被中断处理

作者: Style_月月 | 来源:发表于2020-09-28 16:50 被阅读0次
    • 1、监听音频打断事件
    NotificationCenter.default.addObserver(self, selector: #selector(audioStart(_:)), name:  NSNotification.Name.AVAudioSessionInterruption, object: nil)
    
    • 2、在通知方法中处理音频中断事件
      AVAudioSessionInterruptionType有两种类型:beganended
    public enum InterruptionType : UInt {
    
            case began = 1
    
            case ended = 0
        }
    
    • began表示收到中断事件开始的通知
    • ended表示收到中断事件结束的通知
    @objc private func audioStart(_ note: Notification){
            print("addInterruptionSession \(note) \(note.userInfo![AVAudioSessionInterruptionTypeKey])")
            
            if AVAudioSessionInterruptionType.began.rawValue == note.userInfo![AVAudioSessionInterruptionTypeKey] as? UInt{
                print("addInterruptionSession 收到音频中断开始通知")
                //暂停音频
    
            } else if AVAudioSessionInterruptionType.ended.rawValue == note.userInfo![AVAudioSessionInterruptionTypeKey]as? UInt{
                print("addInterruptionSession 收到音频中断结束通知")
                //恢复音频
            }
        }
    

    相关文章

      网友评论

          本文标题:swift 音频被中断处理

          本文链接:https://www.haomeiwen.com/subject/hrtjuktx.html