来自 金沙js77888 2020-03-02 00:29 的文章
当前位置: 金沙js77888 > 金沙js77888 > 正文

即像手动按音量键一样

//初始化音频管理器AudioManager mAudioManager = (AudioManager) getSystemService(AUDIO_SERVICE);//获取系统最大音量int maxVolume=mAudioManager.getStreamMaxVolume(AudioManager.STREAM_MUSIC);// 获取设备当前音量int currentVolume =mAudioManager.getStreamVolume(AudioManager.STREAM_MUSIC);// 设置seekbar的最大值sbVolume.setMax(maxVolume);// 显示音量sbVolume.setProgress(currentVolume);

调节音量有两种方式一种是渐进式,即像手动按音量键一样,一步一步增加或减少,另一种是直接设置音量值

  • 渐进式
public void adjustStreamVolume (int streamType, int direction, int flags)//减少音量mAudioManager.adjustStreamVolume(AudioManager.STREAM_MUSIC,AudioManager.ADJUST_LOWER,AudioManager.FX_FOCUS_NAVIGATION_UP);//增加电量mAudioManager.adjustStreamVolume (AudioManager.STREAM_MUSIC, AudioManager.ADJUST_RAISE,AudioManager.FX_FOCUS_NAVIGATION_UP)

第一个streamType是需要调整音量的类型,这里设的是媒体音量,可以是:

STREAM_ALARM 警报STREAM_MUSIC 音乐回放即媒体音量STREAM_NOTIFICATION 窗口顶部状态栏Notification,STREAM_RING 铃声STREAM_SYSTEM 系统STREAM_VOICE_CALL 通话STREAM_DTMF 双音多频,不是很明白什么东西

第二个direction,是调整的方向,增加或减少,可以是:

ADJUST_LOWER 降低音量ADJUST_RAISE 升高音量ADJUST_SAME 保持不变,这个主要用于向用户展示当前的音量

第三个flags是一些附加参数,只介绍两个常用的

FLAG_PLAY_SOUND 调整音量时播放声音FLAG_SHOW_UI 调整时显示音量条,就是按音量键出现的那个
  • 直接设置
public void setStreamVolume (int streamType, int index, int flags)mAudioManager.setStreamVolume(AudioManager.STREAM_MUSIC, mAudioManager.getStreamMaxVolume(AudioManager.STREAM_MUSIC), AudioManager.FLAG_PLAY_SOUND);//得到听筒模式的最大值mAudioManager.getStreamMaxVolume(AudioManager.STREAM_VOICE_CALL);//得到听筒模式的当前值mAudioManager.getStreamVolume(AudioManager.STREAM_VOICE_CALL);

本文由金沙js77888发布于金沙js77888,转载请注明出处:即像手动按音量键一样

关键词: 金沙js77888 Android 音量调节