W mojej aplikacji, jeśli iPhone jest podłączony do zestawu słuchawkowego Bluetooth, odtwarzaj dźwięk przez Bluetooth. W innym przypadku użyj głośnika domyślnego.iOS 7 Wyjście Bluetooth nie działa dla AVAudioSessionCategoryPlayAndRecord
Oto mój kod
[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback withOptions:AVAudioSessionCategoryOptionAllowBluetooth error:nil];
[[AVAudioSession sharedInstance] setMode:AVAudioSessionModeVoiceChat error:nil];
[[AVAudioSession sharedInstance] overrideOutputAudioPort:AVAudioSessionPortOverrideNone error:nil];
[[AVAudioSession sharedInstance] setActive:YES error:nil];
Jednak, kiedy próbował użyć kategorii setCategory: AVAudioSessionCategoryPlayAndRecord. Trasa do urządzenia Bluetooth przestała działać ... Nie wiem dlaczego. Ponieważ przez prawo, opcja bluetooth powinien pracować tylko dla rekordu lub PlayAndRecord kategorii ...
* ważne/tylko z AVAudioSessionCategoryRecord i AVAudioSessionCategoryPlayAndRecord */
Dodawanie: Czy mogę mieć bluetooth dla tylko wyjście (wejście nadal używa domyślnego mikrofonu z telefonu)?
UPDATE
zmieniłem kolejność wywołując setMode najpierw, a następnie setCategory. Działa po raz pierwszy uruchamiając aplikację (wywołanie). Kiedy spróbowałem ponownie wykonać tę samą akcję, currentRoute nadal dawał mi wynik = Bluetooth, ale faktyczne wyjście powracało do domyślnego przedniego głośnika telefonu.
Pomogło mi to w nieco innym problemie. Dziękuję Ci! – user3099609
Twoje pytanie zawierało odpowiedź dla mnie. Dzięki! – vahotm