像native phone那样,如果手机连接了耳机、蓝牙音响的时候,系统会显示三个选项:蓝牙,耳机还是手机。
自己的app要怎么写这个feature?
我知道可以用AVAudioSession.但是它貌似直接帮你按priority做好选择,不知道要怎么能够拿到availableOutputs所有选项?
AVAudioSession* myAudioSession = [AVAudioSession sharedInstance];
[myAudioSession setMode:AVAudioSessionModeVoiceChat error:nil];
[myAudioSession setCategory:AVAudioSessionCategoryPlayAndRecord withOptions:AVAudioSessionCategoryOptionAllowBluetooth error:nil];
[myAudioSession setActive:YES error:nil];
오디오 재생 및 녹음에 간단한 Objective-C 인터페이스를 사용하려는 경우 AV Foundation 프레임워크를 사용할 수 있습니다.
동기화 기능을 사용하여 오디오를 재생 및 녹음하거나, 오디오 스트림을 구문 분석하거나, 오디오 형식을 변환하려는 경우 Audio Toolbox 프레임워크를 사용할 수 있습니다.
오디오 처리 플러그인을 연결하여 사용하려면 Audio Unit 프레임워크를 사용할 수 있습니다.
게임 및 기타 애플리케이션에서 위치 오디오를 재생하려면 OpenAL 프레임워크를 사용해야 합니다. OpenAL 1.1에 대한 iPhone OS의 지원은 Core Audio를 기반으로 합니다.
iPod 라이브러리에서 노래, 오디오북 또는 오디오 팟캐스트를 재생하려면 미디어 플레이어 프레임워크의 iPod 미디어 라이브러리 액세스 인터페이스를 사용해야 합니다.
Core Audio 프레임워크(다른 오디오 프레임워크와 동일)는 Core Audio 서비스에 필요한 모든 데이터 유형을 제공합니다.