android调节音量——AudioManager的应用

下面博客链接为实例代码链接,本章博客就不重复写了。我主要总结了一个方法,方便开发时候使用。

AudioManager提供访问音量和振铃模式控制。
使用Context.getSystemService(Context.AUDIO_SERVICE)得到这个类的一个实例。
链接博客1
链接博客2
链接博客3
谷歌安卓中文官网

声音类型(streamType):

声音类型说明
STREAM_ALARM闹钟音量
STREAM_DTMF双音多频,拨号键的声音
STREAM_MUSIC音乐音量,即媒体音量
STREAM_NOTIFICATION通知音量
STREAM_RING手机铃声
STREAM_SYSTEM系统声音
STREAM_VOICE_CALL通话声音

声音方向(direction)

相关方法
adjustVolume(int, int)
adjustStreamVolume(int, int, int)

声音方向说明
ADJUST_LOWER减少铃声音量
ADJUST_RAISE增大铃声音量
ADJUST_MUTE静音
ADJUST_SAME当前音量,主要用于展示音量,并非修改
ADJUST_TOGGLE_MUTE切换静音状态
ADJUST_UNMUTE取消静音音量

flags:

flags类型说明
FLAG_ALLOW_RINGER_MODES
FLAG_PLAY_SOUND是否在改变音量时播放声音
FLAG_REMOVE_SOUND_AND_VIBRATE无振动,无声音
FLAG_SHOW_UI调整时显示音量条,就是按音量键出现的界面
FLAG_VIBRATE如果进入的是振动响铃模式是否振动。
方法说明
adjustStreamVolume(int streamType,int direction,int flags)根据方向调整特定音量 streamType: 铃声类型- direction: 方向来调整音量 flags:一个或多个标志

方法说明
getStreamMaxVolume(int streamType)说明:指定声音类型的最大音量
getStreamVolume(int streamType)指定声音类型,获取当前音量,最大值为7,最小值为0,当为0时,手机自动将模式调整为“震动模式”。
setStreamVolume(int streamType,int direction,int flags)改变音量index:声音大小 ,可以根据-
boolean isStreamMute (int streamType)返回特定声音类型的当前静音状态

铃声模式(ringerMode):

铃声模式说明
RINGER_MODE_NORMAL正常(可能有声),震动(可能振动)
RINGER_MODE_SILENT无声,不会振动
RINGER_MODE_VIBRATE无声,振动
方法说明
getRingerMode()返回当前的铃声模式。
setRingerMode(int ringerMode)设置铃声模式。

音频模式(mode):

音频模式说明
MODE_CURRENT当前音频模式
MODE_NORMAL正常音频模式:不响,没有呼叫建立。
MODE_RINGTONE振铃音模式。呼入被通知。
MODE_IN_CALL在通话音频模式。一个电话呼叫建立。
MODE_IN_COMMUNICATION在通信音频模式。音频/视频聊天或VoIP呼叫建立。
MODE_INVALID
int getMode ()返回当前的音频模式
setMode(int mode)设置音频模式。
方法说明
isVolumeFixed()判断是否是固定声音,是则无法通过修改调节音量
isMusicActive()检查音乐是否处于活动状态
isSpeakerphoneOn()检查扬声器是否打开或关闭。
setMicrophoneMute(boolean on)设置开启或关闭麦克风静音。
setSpeakerphoneOn(boolean on)设置为打开或关闭扬声器。
registerAudioDeviceCallback(AudioDeviceCallback callback, Handler handler)注册一个AudioDeviceCallback对象,以接收改变通知到设定连接的音频设备。
registerAudioPlaybackCallback(AudioManager.AudioPlaybackCallback cb, Handler handler)注册一个回调,通过通知的音频播放变化
AudioManager.AudioPlaybackCallback
requestAudioFocus(AudioFocusRequest focusRequest)请求音频焦点。
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值