我正在尝试手动禁用/启用向蓝牙设备(车内免提)播放音频。因此,我需要仅通过电话上的扬声器或扬声器上的蓝牙设备播放MediaPlayer设置-当然,当连接了蓝牙设备时-否则,我想使用电话扬声器。
我只能通过这种方式做到这一点:
AudioManager ax = (AudioManager) getSystemService(AUDIO_SERVICE);
player.setAudioStreamType(AudioManager.MODE_NORMAL);
ax.setMode(AudioManager.MODE_NORMAL);
这很好用,但仅当我使用此行时
ax.setSpeakerphoneOn(true);
当我在此行上使用“false”时,扬声器处于安静状态,而我不希望这样做(但是其他所有功能都可以正常工作,只是声音处于安静状态)。
所以我想要一种方法:
如果我使用其他模式,则无法正常工作-例如。声音会播放到蓝牙设备,还会播放电话扬声器。
感谢您的回答。
最佳答案
OPA!
if(ONLY_PHONE_SPEAKER)
{
ax.setStreamVolume(AudioManager.MODE_NORMAL, 20, 0);
player.setAudioStreamType(AudioManager.MODE_NORMAL);
ax.setSpeakerphoneOn(true);
}
else
{
// BT enabled - only BT when is connected
// speaker - when is not connected
ax.setStreamVolume(AudioManager.STREAM_MUSIC, 20, 0);
player.setAudioStreamType(AudioManager.STREAM_MUSIC);
ax.setSpeakerphoneOn(true);
}
关于android - Android:MediaPlayer-免提音量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40306279/