在上一篇的音频播放提到了如何简单使用MediaPlayer,其中初始化的时候设置了固定的音量
mediaPlayer.setVolume(1.0f,1.0f)
这就导致了,我们在通过物理按键上下调节音量时,不起作用,若是不设置,播放的时候默认是固定系统音量之前设置好的那个媒体音量。也是不能通过物理按键上下调节音量。
问题出现,度娘出马,恍恍惚惚中发现可通过AudioManager来调节媒体音量,后来详细看了一下AudioManager的介绍,才发现这东西就是专门控制媒体音量的,包括铃声、闹钟和通话音量。
就我们这个问题来讲
首先通过
audioManager= (AudioManager) context.getSystemService(Context.AUDIO_SERVICE);
获得系统服务音量管理类AudioManager实例。
然后下面就意外的十分简单。
上调音量
audioManager.adjustStreamVolume(AudioManager.STREAM_MUSIC,AudioManager.ADJUST_RAISE,AudioManager.FLAG_SHOW_UI);
下调音量
audioManager.adjustStreamVolume(AudioManager.STREAM_MUSIC,AudioManager.ADJUST_LOWER,AudioManager.FLAG_SHOW_UI);
其中我们简单说一下上面参数的主要作用。
先看一下adjustStreamVolume方法的源码

本文介绍了在Android中如何使用AudioManager进行音量控制,包括如何通过物理按键调节音量,以及处理第三方语音通话时的音频焦点问题。重点讲解了AudioManager的adjustStreamVolume方法,以及设置、获取音量的API,强调了不同音频分类的应用场景,并讨论了适配不同设备音量的策略。
最低0.47元/天 解锁文章
1126

被折叠的 条评论
为什么被折叠?



