在我的应用程序中,我允许用户在内置手机扬声器,扬声器电话和立体声BT(A2DP)耳机之间切换音频输出 . 如果插入有线耳机,则无法选择内置扬声器或A2DP . 无论哪种方式,声音都通过有线耳机播放 . 有没有办法强迫它通过BT耳机播放?
使用API 5及更高版本,不推荐使用隐式设置音频路径的所有方法,因此我无法找到实现此目的的方法 . 任何帮助,将不胜感激 .
谢谢 .
如果插入有线耳机BT耳机,那么可以切换到内置扬声器(如果你的意思是android设备扬声器)或有线耳机
AudioManager audioManager = (AudioManager)getApplicationContext().getSystemService(Context.AUDIO_SERVICE); audioManager.setMode(AudioManager.MODE_IN_CALL); // true - switch to internal speakers; false - to wired headsets audioManager.setSpeakerphoneOn(true); mMediaPlayer = MediaPlayer.create(AudioTests.this, R.raw.test_cbr); mMediaPlayer.start();
但在这种情况下,切换到BT耳机是个问题 . 此代码无法切换到
// instead of audioManager.setSpeakerphoneOn(true); audioManager.setMode(0); audioManager.setBluetoothScoOn(true); audioManager.startBluetoothSco();
1 回答
如果插入有线耳机BT耳机,那么可以切换到内置扬声器(如果你的意思是android设备扬声器)或有线耳机
但在这种情况下,切换到BT耳机是个问题 . 此代码无法切换到