首页 文章

警报中断后,AudioUnitInitialize失败,错误代码为1701737535 'ent?'

提问于
浏览 1872
0

我正在使用VOIP应用程序 . 该应用程序与CallKit正常工作 .

如果警报在通话中发生,我将面临一个问题 . 每当警报停止发射(音频中断结束)时,我们都会尝试在AVAudioSession上设置setActive:但它始终给出代码1701737535的错误,即 . 'ENT?' .

当我尝试初始化音频单元时,会发生同样的错误 . 没有使用CallKit它工作正常 .

任何人在音频中断结束时都会遇到激活音频会话的问题 .

我在同一场景中得到了不同的错误'!pri'56017449,但这次由于Native Phone应用程序而发生中断 .

问题是100%可复制的 . 尝试了很多命中和跟踪,如线程,延迟或调用setActive:YES并且不调用setActive:YES . 但没有运气 .

总结一下:

  • 获取错误1701737535即 . “ENT?如果由于ALARM而中断 .

  • 获取错误561017449即 . '!pri'如果由于Native Call而中断

仅在使用带有VIOP的CallKit时复制 .

有人帮忙 .

1 回答

  • 0

    我遇到了同样的问题,我找到并与我合作的解决方案是在报告新呼叫之前启用音频会话 .

    // Activate audio session
      do {
        try AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryPlayAndRecord, mode: AVAudioSessionModeVoiceChat, options: [.mixWithOthers, .allowBluetoothA2DP])
        try AVAudioSession.sharedInstance().setActive(true)
      } catch {
      }
      provider.reportNewIncomingCall(with: currentCallID, update: update, completion: { error in })
    

相关问题