首页 文章

Android:MediaPlayer - 免提卷

提问于
浏览
1

我正在尝试手动禁用/启用音频到蓝牙设备的播放(车内免提) . 所以我需要将MediaPlayer设置为仅通过手机上的扬声器播放或仅使用扬声器蓝牙设备播放 - 但当然连接蓝牙设备时 - 如果没有,我想使用手机扬声器 .

我设法做到这一点只有这样:

AudioManager ax = (AudioManager) getSystemService(AUDIO_SERVICE);
player.setAudioStreamType(AudioManager.MODE_NORMAL);
ax.setMode(AudioManager.MODE_NORMAL);

这很好,但就在我使用这一行时

ax.setSpeakerphoneOn(true);

当我在这条线路上使用“假”时,扬声器是安静的,我不希望这样(但其他一切都按原样工作,只是声音很安静) .

所以我想要一个方法:

  • 从手机中的扬声器播放声音(仅限)

  • 播放来自蓝牙设备的声音(仅限)
    设备未连接时

    • 步骤1 .

如果我使用不同的模式,它将无法正常工作 - 例如 . 声音播放蓝牙设备,还有手机扬声器 .

谢谢你的回答 .

1 回答

  • 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);
    }
    

相关问题