2017-06-20 23 views
0

VOIPアプリケーションでAVAudioSessionを使用しています(CallKitも使用)。 私は、セッションが、例えば2回目の着信呼出によって、いくつかのことによって中断されることを理解します。 Appleはこのページの下の方に述べている: https://developer.apple.com/library/content/documentation/Audio/Conceptual/AudioSessionProgrammingGuide/HandlingAudioInterruptions/HandlingAudioInterruptions.html#//apple_ref/doc/uid/TP40007875-CH4-SW5AVAudioSessionInterruptionTypeEndedを受信せずにオーディオの中断が終了したことをどのように知ることができますか?

「注:始める中断が 対応終了割り込みを持っていることをあなたのアプリがフォアグラウンドに切り替え を意識する必要があります保証はありませんいずれかの場合、あなたのアプリがそのオーディオの セッションを再度アクティブにする必要があるかどうかを判断してください。

このページには、ユーザーが着信呼び出しを無視し、AVAudioSessionInterruptionTypeEndedが送信されている特別な例があります。

しかし、他のすべてのケースで割り込みが終了したときにはどうすればよいですか(AVAudioSessionInterruptionTypeEndedを受け取ることはありません)。 (たとえば、ユーザーが2番目の通話に応答して保留にした後、2番目の通話を終了すると)2番目の通話を終了します。

ありがとう!

答えて

0

私はCallKitを使用するとき、音楽のようなオーディオを使用しているアプリケーションは、他のVoIPアプリケーションやネイティブコールを除いてアプリケーションを中断させることはありません。 この場合、コールキットuiの応答に従ってコールが終了/保留されます(コールが保留をサポートしていない場合は、&を受け入れることはできません)。 CallKitデリゲートメソッドからコールバックを取得します。

Interruption APIは、CallKitが使用されておらず、CallKitアプリのオーディオセッションの優先度が、使用していない場合よりも高い場合にのみ機能します。

関連する問題