我正在开发游戏应用程序。但音量控制存在问题。我想使用seekBar更改媒体播放器卷,而不是系统媒体卷。是否有通过seekBar更改媒体播放器音量的解决方案。
提前致谢。
答案 0 :(得分:5)
首先,从AudioManager获取引用;
AudioManager audioMan = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
提高音量:
audioMan.adjustStreamVolume(AudioManager.STREAM_MUSIC, AudioManager.ADJUST_RAISE, AudioManager.FLAG_VIBRATE | AudioManager.FLAG_PLAY_SOUND | AudioManager.FLAG_SHOW_UI);
降低音量:
audioMan.adjustStreamVolume(AudioManager.STREAM_MUSIC, AudioManager.ADJUST_LOWER, AudioManager.FLAG_VIBRATE | AudioManager.FLAG_PLAY_SOUND | AudioManager.FLAG_SHOW_UI);
获得最大音量:
int maxVolume = audioMan.getStreamMaxVolume(AudioManager.STREAM_MUSIC);
获取当前音量:
int currVolume = audioMan.getStreamVolume(AudioManager.STREAM_MUSIC);
您可以删除我包含的任何标记
答案 1 :(得分:0)
可能是这个帮助...
protected static void setVolume(int volume) {
currentVolume = volume;
{
if (volume == 1) {
volume = 2;
}
try {
float vol = ((float) volume / CONSTANT.SYSTEM_MAX_VOLUME);
mediaPlayer.setVolume(vol, vol);
} catch (Exception e) {
e.printStackTrace();
}
}
}