| Está em conformidade com | NSObject |
| Declarado em | OTAudioKit.h |
Visão geral
Define um gerenciador de sessão de áudio para uso com serviços de chamadas, como o CallKit. A implementação deste protocolo é opcional. Dispositivos de áudio personalizados podem implementar esses métodos para gerenciar a AVAudioSession. O dispositivo de áudio padrão no SDK fornece uma implementação funcional.
Para obter mais informações, consulte esta documentação.
– enableCallingServicesMode método obrigatório
Habilita a ativação manual da AVAudioSession.
- (void)enableCallingServicesMode
Discussão
Esse método prepara o SDK para integração com serviços de chamadas, como o CallKit, permitindo o roteamento adequado do áudio e o gerenciamento de sessões.
O SDK gerencia a configuração da AVAudioSession, enquanto o aplicativo ou o CallKit é responsável por ativar a sessão.
Observação: Chame essa função logo no início do ciclo de vida do aplicativo, normalmente na inicialização ou antes de iniciar qualquer chamada.
Declarado em
OTAudioKit.h
– preconfigureAudioSessionForCallWithMode: método obrigatório
Configura a sessão de áudio com as configurações adequadas para uma chamada baseada no CallKit.
- (void)preconfigureAudioSessionForCallWithMode:(AVAudioSessionMode _Nullable)mode
Parâmetros
mode |
O AVAudioSessionMode a ser aplicado durante a configuração. Em geral, AVAudioSessionModeVoiceChat deve ser usado para chamadas VoIP a fim de otimizar o desempenho de áudio. Se houver um modo personalizado disponível para uso com um dispositivo de áudio não padrão, esse modo será utilizado; caso contrário, AVAudioSessionModeVoiceChat será usado como padrão. |
Discussão
Este método configura o AVAudioSession com configurações otimizadas para o modo especificado,
incluindo categoria de áudio, modo e configuração de roteamento. No entanto, isso não é ativado
a sessão. A sessão é configurada com antecedência para que possa ser ativada corretamente quando
acionada por uma ação do CallKit.
Observação: Esse método deve ser chamado antes da ativação da sessão, normalmente em resposta ao
CallKit’s CXAnswerCallAction ou CXStartCallAction. Isso garante a configuração adequada
para posterior ativação pelo sistema. Consulte Fórum de Desenvolvedores da Apple para mais detalhes.
Declarado em
OTAudioKit.h
– audioSessionDidActivate: método obrigatório
Notifica o SDK de que a sessão de áudio foi ativada.
- (void)audioSessionDidActivate:(AVAudioSession *_Nonnull)session
Parâmetros
session |
O ativo AVAudioSession instância que foi ativada pelo sistema. |
Discussão
Esse método deve ser chamado quando o sistema (por exemplo, por meio do CallKit) tiver ativado a sessão de áudio. Ele informa ao SDK que o áudio já está pronto para ser usado e que a sessão está ativa.
Observação: Esse método só é relevante ao usar OTAudioSessionManagerModeCallingServices.
Se for chamado em outros modos, como OTAudioSessionManagerModeVideoChat, ele
será ignorado, já que o SDK lida com a ativação da sessão de áudio automaticamente.
Declarado em
OTAudioKit.h
– audioSessionDidDeactivate: método obrigatório
Notifica o SDK de que a sessão de áudio foi desativada.
- (void)audioSessionDidDeactivate:(AVAudioSession *_Nonnull)session
Parâmetros
session |
O AVAudioSession instância que foi desativada. |
Discussão
Este método deve ser chamado quando o sistema (por exemplo, o CallKit) desativar a sessão de áudio. Ele sinaliza ao SDK para liberar os recursos de áudio ou atualizar seu estado interno de acordo com isso.
Observação: Esse método só é relevante ao usar OTAudioSessionManagerModeCallingServices.
Em modos como OTAudioSessionManagerModeVideoChat, essa chamada será ignorada,
já que o SDK gerencia automaticamente o ciclo de vida da sessão de áudio.
Declarado em
OTAudioKit.h