AgoraIO/Advanced-Video

CallKit speaker button has incorrect selection state

smolskyaleksey opened this issue · 2 comments

Hi I use CallKit framework and I know that you guys use incorrect options of AudioSession
You must use this code to fix it.

 try AVAudioSession.sharedInstance().setCategory(
                    .playAndRecord,
                    mode: .voiceChat,
                    options: [.duckOthers, .allowBluetoothA2DP, .allowBluetooth]
                )

This (.allowBluetoothA2DP) option fix incorrect behaviour
Links of issue:

https://stackoverflow.com/questions/48023629/abnormal-behavior-of-speaker-button-on-system-provided-call-screen/48806266#48806266

https://stackoverflow.com/questions/49170274/callkit-loudspeaker-bug-how-whatsapp-fixed-it

Could you fix as soon as possible?

Also on interface CallKit setEnableSpeakerphone isn't called, that's why any touch on speaker button doesn't have any effects if doesn't call setDefaultAudioRouteToSpeakerphone(false) before join
Only in broadcasting mode

stale commented

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.