博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
iOS 中多音频处理
阅读量:6714 次
发布时间:2019-06-25

本文共 1329 字,大约阅读时间需要 4 分钟。

iOS 中多音频处理

当我们自制作一个播放器的时候,会出现播放的 audio 被其他的比如系统来电或者是 App 内的其他 audio 打断的,这个时候,根据官方如下处理就行了

NotificationCenter.default.addObserver(self, selector: #selector(audioSessionInterruption(notification:)), name: Notification.Name.AVAudioSessionInterruption, object: nil) /// 音乐中断处理    @objc fileprivate func audioSessionInterruption(notification: NSNotification) {        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            player.pause()        } 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                    logger.verbose("Interruption Ended - playback should resume")                    player.play()                } else {                    // Interruption Ended - playback should NOT resume                    player.pause()                }            }        }    }复制代码

转载地址:http://nxelo.baihongyu.com/

你可能感兴趣的文章
IBM磁盘阵列及文件系统的管理
查看>>
Algs4-2.1.34罕见情况
查看>>
jQuery的属性操作
查看>>
BroadcastReceiver
查看>>
Python学习-字典的常见用法
查看>>
Python 异常处理
查看>>
前端 回顾
查看>>
按键精灵是否可以编写函数或方法,简化脚本,使脚本更加模块化?
查看>>
BZOJ3626LCA(树剖+线段树+LCA+差分)
查看>>
事件的产生,传递以及响应链
查看>>
练习4.4 萨提亚冰山理论应用
查看>>
python pandas 对各种文件的读写 IO tools
查看>>
【转】ios 抓取 tcp/udp 包
查看>>
Struts2入门案例——基于Struts2任意两数据的代数和
查看>>
E - Trees on the level
查看>>
【CSS3】Advanced9:Transformation
查看>>
博客搬家
查看>>
实例化物体
查看>>
漢譯Promises/A+規範
查看>>
IO阻塞与IO非阻塞2
查看>>