微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

objective-c – AVAudioSessionCategoryPlayAndRecord使AirPlay不可见

我遇到以下问题:当我的应用程序中的音频会话设置播放和记录类别时,AirPlay不可用:

[[AVAudioSession sharedInstance]
        setCategory: AVAudioSessionCategoryPlayAndRecord
        error: &setCategoryError];

此呼叫使AirPlay消失,立即将音频重新路由到扬声器.

该问题可以容易地再现,例如在Xcode文档的示例项目avTouch中,通过使用AVAudioSessionCategoryPlayAndRecord替换AVAudioSessionCategoryPlayback类别:在原始示例中,AirPlay选择器是可见的,并允许更改输出源,而使用AVAudioSessionCategoryPlayAndRecord类别,选择器消失.

是否有正确的方法切换到AVAudioSessionCategoryPlayAndRecord类别,以便AirPlay仍然可用?

(这样的问题已经是already asked,但没有得到任何答案.)

解决方法

你试图使用什么AirPlay设备?它有麦克风吗?

如果没有,则使用PlayAndRecord类别时,iOS不会将其显示为该选项,因为该设备无法播放和录制.当使用Play类别时,它会显示.

另外,如果您使用的设备是蓝牙设备,请将AVAudioSessionCategoryOptionAllowBluetooth设置为YES吗?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐