当耳机插入或拔出时,AVAudioEngine会崩溃

时间:2014-11-04 05:22:15

标签: swift

我正在我的 iPhone6 Plus 上测试我的audioApp,并且在插入或拔出耳机后它崩溃了。 我的应用中使用了AVAudioEngineAVAudioMixerAVAudioPlayerNode

启动没有耳机的应用程序可以播放iPhone扬声器的声音。

使用耳机启动应用程序可以播放来自耳机的声音。

以下情况发生错误。 启动应用程序没有耳机和播放扬声器的声音。然后如果我连接耳机,耳机就没有声音了。当我拔掉耳机后,即使是扬声器也没有声音。当我触摸屏幕时,audioApp会崩溃。

与使用耳机启动应用程序相同并插入耳机。

如何修复此错误? 我很感激你的意见。

这是我收到的错误消息。

Terminating app due to uncaught exception 'com.apple.coreaudio.avfaudio', reason: 'required condition is false: _engine->IsRunning()'
*** First throw call stack:
(0x184d61e48 0x1954a80e4 0x184d61d08 0x1836d26c0 0x1836fa328 0x1836f975c 0x1000d03c0 0x1000d0728 0x1895450f8 0x18952e22c 0x189544a94 0x189544720 0x18953dc74 0x18951138c 0x1897b01b4 0x18950f8f4 0x184d1a0e8 0x184d1938c 0x184d1743c 0x184c451f4 0x18ddd35a4 0x189576784 0x1000d5614 0x1000d5654 0x195b16a08)
libc++abi.dylib: terminating with uncaught exception of type NSException

1 个答案:

答案 0 :(得分:4)

您需要注册AVAudioEngineConfigurationChangeNotification通知并执行必要的步骤来更新输出节点。