安卓插入耳機時也要開啟揚聲器
阿新 • • 發佈:2019-01-30
我最開始也是在各種搜尋引擎上尋找各種方法,借鑑了
https://blog.csdn.net/menghnhhuan/article/details/7415843
上面的方法,並且添加了許可權
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS"/>
但是還是行不通,我把程式碼看了好幾遍,並且研究了他們這幾個方法實現的功能。
最後我把AudioManager mAudioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE); int maxVolume = mAudioManager.getStreamMaxVolume(AudioManager.STREAM_MUSIC); mAudioManager.setStreamVolume(AudioManager.STREAM_MUSIC, maxVolume, 0); //音量調到最大 //mAudioManager.setMicrophoneMute(false); mAudioManager.setSpeakerphoneOn(true);//使用揚聲器外放,即使已經插入耳機 mAudioManager.setMode(AudioManager.STREAM_MUSIC);
mAudioManager.setMicrophoneMute(false);
這一行註釋掉了,無論耳機是什麼狀態,都要開啟揚聲器進行播放,但是這樣耳機是沒有聲音的。
只能開啟一種,要麼是耳機,要麼是揚聲器,那個在前一句就開啟哪一個。
而且,開啟揚聲器還要開起耳機這樣的情況,感覺不合常理。