/** * 设置播放模式 */ fun setAudioStreamType(speaker: Boolean) { initAudioManager() if (speaker) { audioManager!!.setSpeakerphoneOn(true) audioManager!!.setMode(AudioManager.MODE_NORMAL) } else { audioManager!!.setSpeakerphoneOn(false)//关闭扬声器 //5.0以上 if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { audioManager!!.setMode(AudioManager.MODE_IN_COMMUNICATION } else { audioManager!!.setMode(AudioManager.MODE_IN_CALL) } } } private fun initAudioManager() { if (audioManager == null){ audioManager = context().getSystemService(AUDIO_SERVICE) as AudioManager } }
切记需要权限 <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />