在使用 setSpeakerphoneOn() 方法之前,可以先禁用 AudioManager 自动切换模式。具体实现如下:
// 获取 AudioManager 对象 AudioManager audioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
// 禁用 AudioManager 自动切换模式 audioManager.setMode(AudioManager.MODE_IN_COMMUNICATION);
// 打开扬声器 audioManager.setSpeakerphoneOn(true);
// 恢复 AudioManager 自动切换模式 audioManager.setMode(AudioManager.MODE_NORMAL);
需要注意的是,以上代码需要在进行语音通话时调用,否则可能会影响其他程序的音频播放。