AVRoutePickerView не улавливает изменения маршрута, сделанные overrideOutputAudioPort(.speaker)

Я запускаю вызов VoIP с помощью CallKit, использую AVAudioSession.sharedInstance.overrideOutputAudioPort(.speaker), чтобы перевести звук в динамик, а затем открываю файл AVRoutePickerView.

Выбранным выходом в представлении является iPhone-- динамик на iPhone. Я бы ожидал, что вместо этого будет показано, что выбрано speaker.

Что может быть причиной этого? Должен ли я принудительно выводить звук на динамик по-другому? Есть ли другой способ показать функциональность выбора маршрута?

Странно то, что если вы заблокируете телефон и посмотрите на пользовательский интерфейс CallKit, он показывает, что он перенаправляется на динамик.


person kumail    schedule 31.07.2019    source источник
comment
У меня такая же проблема. Вы нашли какое-нибудь решение?   -  person NikedLab    schedule 22.01.2020


Ответы (1)


Я столкнулся с той же проблемой. В моем коде я заменил аудиомаршрут на .none, и это действительно сработало. Но AvRoutePickerView показал выбранный .speaker. Меня это смущает.

person Wenxiao    schedule 12.11.2019