Java蓝牙电话_Android mediaPlayer和蓝牙汽车/耳机电话
我有一個基于webrtc的應用程序,需要作為默認呼叫應用程序 . 呼叫中有兩種狀態:Initiator(1),. Initiator(2) . 當我處于狀態1時,app必須從耳機播放聲音,并從狀態2播放電話揚聲器,這可以通過
audioManager.setSpeakerphoneOn(boolean value)
但似乎這僅適用于MediaStream.MUSIC類型 . 無論如何,它就像電話系統上的魅力一樣,當我們有藍牙設備時就會出現麻煩,例如藍牙耳機 . setSpeakerPhone將忽略藍牙設備并從手機耳機/揚聲器播放聲音 . 好的,我可以檢查是否有任何藍牙設備連接到手機,只是播放沒有setSpeakerPhone的聲音,這不是問題 . 我仍然可以通過MUSIC流播放聲音 . 但是,如果設備連接到汽車,這將無法正常工作 . Car似乎只能使用AudioManager.STREAM_RING . 我根本無法理解這一點 . 在android中模擬本機調用的最佳實踐是什么?我需要通過耳機/揚聲器播放聲音并在RING流中播放它,但它根本不起作用,有沒有人以前打過這個任務?
mediaPlayer = MediaPlayer.create(ctx, res);
mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
audioManager.setMode(AudioManager.STREAM_MUSIC);
if (isIniator) {
playFromSpeakephone(false);
} else {
playFromSpeakephone(true);
}
mediaPlayer.start();
總結
以上是生活随笔為你收集整理的Java蓝牙电话_Android mediaPlayer和蓝牙汽车/耳机电话的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java 与 .net socket_j
- 下一篇: java 加载中_Java 6类加载中更