You can't mute only WebViews volume, but you can mute the whole system volume when you are showing the WebView. Like :
When you are showing that particular WebView use the below method :
public static void mute(Context context) {
AudioManager mAudioManager = (AudioManager) context.getSystemService(Context.AUDIO_SERVICE);
int mute_volume = 0;
mAudioManager.setStreamVolume(AudioManager.STREAM_MUSIC, mute_volume, 0);
}
And when the webView is not shown set max volume Like :
public static void unmute(Context context) {
AudioManager mAudioManager = (AudioManager) context.getSystemService(Context.AUDIO_SERVICE);
int unmute_volume = mAudioManager.getStreamMaxVolume(AudioManager.STREAM_MUSIC);
mAudioManager.setStreamVolume(AudioManager.STREAM_MUSIC, unmute_volume, 0);
}
If you don't want to set full volume you can get current system volume by
mAudioManager.getStreamVolume(AudioManager.STREAM_MUSIC);
and save it locally and set it back again when you exit the Webview.
WebView
– Porush