Я разрабатываю VoIP-приложение, которое использует Twilio для телефонии. Проблема, с которой я столкнулся, заключается в том, что если AVAudioSession прерывается во время разговора, например, входящим вызовом FaceTime, то я не могу продолжать использовать сессию аудио после окончания прерывания. Вызов не отключается, но звук не слышен, и микрофон тоже ничего не записывает.Возобновление вызова twilio после прерывания сеанса аудиосвязи
Я зарегистрировался для AVAudioSessionInterruptionNotification и в обработчике уведомлений, я делаю следующее:
// get the user info dictionary
NSDictionary *interuptionDict = notification.userInfo;
// get the AVAudioSessionInterruptionTypeKey enum from the dictionary
NSInteger interuptionType = [[interuptionDict valueForKey:AVAudioSessionInterruptionTypeKey] integerValue];
// decide what to do based on interruption type here...
switch (interuptionType)
{
case AVAudioSessionInterruptionTypeBegan:
DLog(@"Audio Session Interruption case started.");
[self setAudioSessionActive:NO];
break;
case AVAudioSessionInterruptionTypeEnded:
{
DLog(@"Audio Session Interruption case ended.");
[self setAudioSessionActive:YES];
break;
}
default:
DLog(@"Audio Session Interruption Notification case default.");
break;
}
// Activate or deactivate the app's audio session
- (void)setAudioSessionActive:(BOOL)active
{
BOOL success = NO;
NSError *error = nil;
success = [[AVAudioSession sharedInstance] setActive:active error:&error];
if (error)
{
DLog(@"Error setting audio session : %@", [error description]);
}
else if (success)
{
DLog(@"Audio session state set successfully :")
}
}
Я не получаю никаких ошибок, но текущий вызов просто не работает.
Я прочитал руководство по программированию аудио-сессии, руководство по человеческому интерфейсу для аудио и других документов, связанных со звуком. Я верю, что следую правильным шагам. Просьба дать какие-либо предложения в качестве того, что мне здесь не хватает.
Когда вы отлаживаете эту проблему, какой DLOG-оператор вы получаете? – TommyBs
Он записывает «Состояние сеанса аудио успешно установлено:» everytime – humblePilgrim