AV录音中断

Posted

技术标签:

【中文标题】AV录音中断【英文标题】:AVAudio session interruption 【发布时间】:2018-10-03 16:59:59 【问题描述】:

尝试在我的项目中处理音频中断。

这段代码曾经在 swift 4 中工作过。

NotificationCenter.default.addObserver(self, selector: #selector(handleInterruption(_:)), name: NSNotification.Name.AVAudiosessionInterruption, object: nil)

自从更新到 Swift 4.2 后,它给了我更改为

的建议
NotificationCenter.default.addObserver(self, selector: #selector(handleInterruption(_:)), name: Notification.Name.AVAudioSession.interruptionNotification, object: nil)

更改为建议的修复后,我收到错误: 类型“Notification.Name”(又名“NSNotification.Name”)没有成员“AVAudioSession”

任何帮助将不胜感激。

使用的文件:

func setupNotifications() 
let notificationCenter = NotificationCenter.default
notificationCenter.addObserver(self, selector: #selector(handleInterruption), name: .AVAudioSessionInterruption, object: nil)

但该文档并未针对 swift 4.2 进行更新。

【问题讨论】:

【参考方案1】:

Xcode 迁移器工具中存在错误。正确的解决方法是,

NotificationCenter.default.addObserver(self, selector: #selector(handleInterruption(_:)), name: AVAudioSession.interruptionNotification, object: nil)

【讨论】:

我们需要为此移除观察者吗?

以上是关于AV录音中断的主要内容,如果未能解决你的问题,请参考以下文章

av68676164(p51-p53)虚拟内存管理

av68676164(p51-p53)虚拟内存管理

AVAudioRecorder 中断委托方法没有被调用

如果被短信、推送通知或电池电量不足等 uialert 中断,如何自动继续录制

iOS开发 锁屏后后台无法继续录音

AV-TEST性能测试满分:深信服EDR如何做到轻量易用?