我正在尝试手动禁用/启用音频到蓝牙设备的播放(车内免提)。所以我需要将MediaPlayer设置为仅通过手机上的扬声器播放或仅使用扬声器蓝牙设备播放 - 但当然连接蓝牙设备时 - 如果没有,我想使用手机扬声器。
我设法只这样做了:
AudioManager ax = (AudioManager) getSystemService(AUDIO_SERVICE);
player.setAudioStreamType(AudioManager.MODE_NORMAL);
ax.setMode(AudioManager.MODE_NORMAL);
这很有用,但就在我使用这一行时
ax.setSpeakerphoneOn(true);
当我在这条线路上使用“假”时,扬声器是安静的,我不希望这样(但其他一切都按原样工作,只是声音很安静)。
所以我想要一种方法:
如果我使用不同的模式,它将无法正常工作 - 例如。声音播放蓝牙设备,还有手机扬声器。
感谢您的回答。
答案 0 :(得分:0)
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);
}