android调节音量——AudioManager的应用
程序员文章站
2022-06-17 22:17:18
下面博客链接为实例代码链接,本章博客就不重复写了。我主要总结了一个方法,方便开发时候使用。AudioManager提供访问音量和振铃模式控制。 使用Context.getSystemService(Context.AUDIO_SERVICE)得到这个类的一个实例。 链接博客1 链接博客2 链接博客3 谷歌安卓中文官网声音类型(streamType): 声音类型 说明 STREA...
下面博客链接为实例代码链接,本章博客就不重复写了。我主要总结了一个方法,方便开发时候使用。
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) | 请求音频焦点。 |
本文地址:https://blog.csdn.net/mbh12333/article/details/72541277