首页 > 解决方案 > 如何在代码中使用扬声器模式在我的 iPhone 上拨打电话

问题描述

iOS 中是否有和 Android 中一样的 audioManager 类,以便我可以自动将电话设置为扬声器模式?

audioManager = AudioManager()
audioManager.getSystemService(Context.AUDIO_SERVICE)
audioManager.setMode(AudioManager.MODE_IN_CALL)
audioManager.setSpeakerphoneOn(true)

标签: iosswift

解决方案


您可以使用以下方法临时更改当前音频的输出路由

do {
    let audioSession = AVAudioSession.sharedInstance()
    try audioSession.setCategory(AVAudioSessionCategoryPlayAndRecord) 
    //Set the category as per your requirement

    try audioSession.overrideOutputAudioPort(AVAudioSessionPortOverride.speaker) 
    // or AVAudioSessionPortOverride.none to disable the speaker
}
catch let error{
    print(error)
}

推荐阅读