5

现在我想在我的 iPhone 应用程序中列出可用的音频输出路由,如下所示:

http://www.blogcdn.com/www.tuaw.com/media/2008/09/cb(iphone-101_-switch-between-audio-outputs-for-your-voicemail)1729387198273.jpg

我知道我可以使用音频会话的 audioRouteChangeListener 来获取路由更改信息,但是这种方法只能在我的应用程序启动后获取消息,所以如果耳机和蓝牙都在我的应用程序运行之前连接,我怎样才能获得这些路由的消息,任何提示表示赞赏。

谢谢。

4

2 回答 2

2

我使用 MPVolumeView 得到了一些工作。该组件有一个按钮,可让您选择输出音频路径,就像在音乐应用程序中一样。

如果您愿意,可以使用以下方法隐藏滑块(并且只有按钮):

self.myMPVolumeView.showsVolumeSlider = NO;

目前我找不到以编程方式获取输出目的地和输入源的方法,正如我在这个问题中指出的那样列出可用的输出音频目标 AVAudioSession

于 2013-03-27T10:41:10.530 回答
0

只有 5 个音频输入路由(iOS5+):

kAudioSessionInputRoute_LineIn;
kAudioSessionInputRoute_BuiltInMic;
kAudioSessionInputRoute_HeadsetMic;
kAudioSessionInputRoute_BluetoothHFP;
kAudioSessionInputRoute_USBAudio;

并且有9个音频输出路由(iOS5+):

kAudioSessionOutputRoute_LineOut;
kAudioSessionOutputRoute_Headphones;
kAudioSessionOutputRoute_BluetoothHFP;
kAudioSessionOutputRoute_BluetoothA2DP;
kAudioSessionOutputRoute_BuiltInReceiver;
kAudioSessionOutputRoute_BuiltInSpeaker;
kAudioSessionOutputRoute_USBAudio;
kAudioSessionOutputRoute_HDMI;
kAudioSessionOutputRoute_AirPlay;

在此处找到更多信息,如何检查它们在您的应用程序中的可用性。

于 2012-09-04T15:07:13.603 回答