Когда мое приложение - bit.ly / totoyaApp - выходит на передний план, я устанавливаю:
[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayAndRecord error:nil];
UInt32 audioRouteOverride = kAudioSessionOverrideAudioRoute_Speaker;
AudioSessionSetProperty(kAudioSessionProperty_OverrideAudioRoute, sizeof(audioRouteOverride), &audioRouteOverride);
Когда он переходит в фоновый режим, я сбрасываю на:
[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryAmbient error:nil];
UInt32 audioRouteOverride = kAudioSessionOverrideAudioRoute_None;
AudioSessionSetProperty(kAudioSessionProperty_OverrideAudioRoute, sizeof(audioRouteOverride), &audioRouteOverride);
Он должен правильно работать на всех устройствах.
Но когда я возвращаюсь к многозадачности в моем приложении, иногда оно отключается, и из него не выходит никакой аудиовыход. Только при многозадачности (!) И только из определенных приложений (!). Если я закрою работающее приложение и снова запустлю свое, все будет нормально.
Есть ли подобные опыты? Что, черт возьми, здесь происходит?