如何在耳机中静音但是以编程方式在扬声器上播放?

时间:2014-01-07 06:45:28

标签: android soundpool android-audiomanager headset speakerphone

我正在寻找解决此问题中指定的问题的方法:

How to disable the wired headset programmatically in Java

如上所述,我的扬声器和耳机都有声音。

有人可以告诉我如何静音耳机中的音频以编程方式,同时让它在扬声器上播放不减弱

2 个答案:

答案 0 :(得分:2)

AudioManager am = (AudioManager)context.getSystemService(Context.AUDIO_SERVICE);
am.setMode(AudioManager.MODE_IN_CALL);
am.setSpeakerphoneOn(true);

然后通过AudioManager.STREAM_SYSTEM流播放声音。

当声音播放结束时,请务必将音频管理器恢复到之前的状态,否则它将保持在扬声器上!!

答案 1 :(得分:2)

  

AudioManager mAudioMgr =   (AudioManager)getSystemService(Context.AUDIO_SERVICE);   mAudioMgr.setSpeakerphoneOn(真);   mAudioMgr.setMode(AudioManager.MODE_IN_COMMUNICATION);