繁体   English   中英

MPVolumeView在iPad上不显示扬声器选项

[英]MPVolumeView Isn't show speaker option on iPad

我正在使用MPVolumeView类在音频输出之间进行切换。 在iPhone中,启动时有2个选项(iPhone和扬声器),在iPad中,只有1个选项(扬声器)

但是,当您在iPad上连接耳机时,仅扬声器不是扬声器选项。

(在iPhone上一切正常)

设置MPVolumeView:

private func setUI(){
    let myVolumeView = MPVolumeView(frame: self.speakerButton.bounds)
    myVolumeView.showsVolumeSlider = false
    myVolumeView.setRouteButtonImage(nil, for: .normal)
    self.speakerButton.addSubview(myVolumeView)
}

构建会话:

        try session.setPreferredSampleRate(Double(DefaultAudioDevice.kSampleRate))
        try session.setPreferredIOBufferDuration(0.01)
        let audioOptions = AVAudioSessionCategoryOptions.allowBluetooth.rawValue
        try session.setCategory(AVAudioSessionCategoryPlayAndRecord, mode: AVAudioSessionModeVoiceChat, options: AVAudioSessionCategoryOptions(rawValue: audioOptions))
        try session.setActive(true)
        try session.overrideOutputAudioPort(AVAudioSessionPortOverride.speaker)

我尝试:-添加AVAudioSessionCategoryOptions.defaultToSpeaker-更改为AVAudioSessionCategoryPlayAndRecord-删除session.overrideOutputAudioPort(AVAudioSessionPortOverride.speaker)

扬声器选项永远不会在iPad上显示。 仅在iPhone上

在此处输入图片说明

试试这个代码

let airplayButton = MPVolumeView()
airplayButton.frame = CGRect(x: myX, y: myY, width: 40, height: 40)
airplayButton.showsVolumeSlider = false
customPlayerControls.view.addSubview(airplayButton)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM