我遇到以下问题:每当我在应用程序中为 Audio Session 设置播放和录制类别时,AirPlay都不可用:
[[AVAudioSession sharedInstance]
setCategory: AVAudioSessionCategoryPlayAndRecord
error: &setCategoryError];
此调用使AirPlay消失,并立即将音频重新路由到扬声器。
该问题可以很容易地重现,例如。在Xcode文档的示例项目
avTouch
上,将AVAudioSessionCategoryPlayback
类别替换为AVAudioSessionCategoryPlayAndRecord
:在原始示例中,AirPlay选择器可见,并允许更改输出源,而在AVAudioSessionCategoryPlayAndRecord
类别中,选择器消失。是否有适当的方法可以切换到
AVAudioSessionCategoryPlayAndRecord
类别,以使AirPlay仍然可用?(这样的问题是already asked,但没有得到任何答案。)
最佳答案
您要使用哪种AirPlay设备?有麦克风吗?
如果不是这样,则在使用PlayAndRecord类别时,iOS不会将其显示为选项,因为该设备无法播放和记录。但是,在使用“播放”类别时,它会显示出来。
另外,如果您使用的设备是蓝牙设备,是否已将AVAudioSessionCategoryOptionAllowBluetooth设置为YES?
关于objective-c - AVAudioSessionCategoryPlayAndRecord使AirPlay不可见,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13138197/