Android 音量调节
Android 大约 1541 字AudioManager
//初始化音频管理器
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)
- 直接设置
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);
参数说明
- 第一个
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 调整时显示音量条,就是按音量键出现的那个
阅读 4298 · 发布于 2019-04-13
————        END        ————
Give me a Star, Thanks:)
https://github.com/fendoudebb扫描下方二维码关注公众号和小程序↓↓↓
昵称:
随便看看
换一批
-
MySQL 数据库设置 root 密码阅读 1465
-
GoJS 浏览器窗口缩放后自动居中对齐阅读 2281
-
走进 Rust:trait阅读 2598
-
Linux 使用 vmstat 查看虚拟内存状态阅读 6345
-
Chrome & Edge 常用快捷键阅读 1602
-
Windows 子系统 Ubuntu 启动 Docker 报错解决方法阅读 5720
-
Spring Boot JPA 设置字段 unsigned阅读 3929
-
Redis 查看连接数阅读 3117
-
记一次小程序排查 setData 函数耗时很长思路阅读 3970
-
PowerShell 无法执行 node-gyp 命令阅读 3284