WebView改变音频输出设备
WebView change audio output device
如何将 WebView 的音频输出从扬声器更改为听筒?我试过这段代码,但它不起作用
private fun setupAudio() {
val am = getSystemService(AUDIO_SERVICE) as AudioManager
am.mode = AudioManager.MODE_IN_COMMUNICATION
am.stopBluetoothSco()
am.isSpeakerphoneOn=false
Log.e("Foo","Current mode is ${am.mode}")
}
有权限
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
停止在BT中发送和接收,关闭BT然后关闭免提。这是打开听筒。
am.setMode(AudioManager.MODE_IN_COMMUNICATION); //
am.stopBluetoothSco(); // stop send and receive
am.setBluetoothScoOn(false); // turn off bluetooth
am.setSpeakerphoneOn(false); // true to turn on speakerphone; false to turn it off
打开内置扬声器 -
am.setMode(AudioManager.MODE_NORMAL);
am.stopBluetoothSco();
am.setBluetoothScoOn(false);
am.setSpeakerphoneOn(true);
我成功了,诀窍是在播放开始后调用 setupAudio()
函数。
如何将 WebView 的音频输出从扬声器更改为听筒?我试过这段代码,但它不起作用
private fun setupAudio() {
val am = getSystemService(AUDIO_SERVICE) as AudioManager
am.mode = AudioManager.MODE_IN_COMMUNICATION
am.stopBluetoothSco()
am.isSpeakerphoneOn=false
Log.e("Foo","Current mode is ${am.mode}")
}
有权限
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
停止在BT中发送和接收,关闭BT然后关闭免提。这是打开听筒。
am.setMode(AudioManager.MODE_IN_COMMUNICATION); //
am.stopBluetoothSco(); // stop send and receive
am.setBluetoothScoOn(false); // turn off bluetooth
am.setSpeakerphoneOn(false); // true to turn on speakerphone; false to turn it off
打开内置扬声器 -
am.setMode(AudioManager.MODE_NORMAL);
am.stopBluetoothSco();
am.setBluetoothScoOn(false);
am.setSpeakerphoneOn(true);
我成功了,诀窍是在播放开始后调用 setupAudio()
函数。