我有以下代码(重新)开始AVAudioEngine
连接到AVAudioEngineConfigurationChangeNotification
:
do { try self.engine.start() } catch { DDLogError("could not start sound engine") self.soundEnabled = false return }
self.engine定义为
private let engine = AVAudioEngine()
但是,我经常通过Crashlytics收到崩溃报告
致命异常:com.apple.coreaudio.avfaudio错误561015905
在包含的线上try self.engine.start()
.
561015905是AVAudioSessionErrorCodeCannotStartPlaying
从我的理解,这应该是一个NSError
错误代码,而不是一个例外,应该由我catch
在上面的代码中的空白捕获.不过,该应用程序似乎只是崩溃了.我错过了什么?
我知道有些情况下应用程序会在可能发生此错误的后台唤醒,我会很好,只要我能够以某种方式发现它,就像我想的那样do/catch
.