私のアプリ ( 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);
すべてのデバイスでサウンドの出力/入力が適切に機能する必要があります。
しかし、アプリに戻ってマルチタスクを実行すると、ミュートされることがあり、オーディオ出力がまったく出力されません。マルチタスク時のみ (!)、特定のアプリからのみ (!)。実行中のアプリを閉じて、もう一度起動すると、すべて正常に動作します。
似たような経験はありますか?ここで一体何が起こっているのですか?