Android AudioManager类

1. AudioManager类

AudioManager是音频管理器,提供了音量控制与铃声模式相关操作。

AudioManager audioManager = (AudioManager) getSystemService(AUDIO_SERVICE);

2. 主要方法

adjustVolume(int direction, int flags), 控制手机音量,调大或者调小一个单位

adjustStreamVolume(int streamType, int direction, int flags),根据声音类型控制音量

streamType参数,指定声音类型

  • AudioManager.STREAM_VOICE_CALL,电话语音
  • AudioManager.STREAM_SYSTEM,手机系统
  • AudioManager.STREAM_RING,电话铃声
  • AudioManager.STREAM_MUSIC,手机音乐
  • AudioManager.STREAM_ALARM,手机闹铃
  • AudioManager.STREAM_NOTIFICATION,系统提示
  • AudioManager.STREAM_DTMF,音调

direction参数,指定调节方向

  • AudioManager.ADJUST_RAISE,调大一个单位
  • AudioManager.ADJUST_LOWER,调小一个单位
  • AudioManager.ADJUST_SAME,保持先前的铃声音量
  • AudioManager.ADJUST_MUTE,静音
  • AudioManager.ADJUST_UNMUTE,取消静音
  • AudioManager.ADJUST_TOGGLE_MUTE,静音和取消静音之间切换

flags参数,可多选

  • AudioManager.FLAG_SHOW_UI,显示音量界面
  • AudioManager.FLAG_ALLOW_RINGER_MODES,当改变音量时,是否将振铃模式作为候选项
  • AudioManager.FLAG_PLAY_SOUND,当改变音量时,是否播放声音
  • AudioManager.FLAG_REMOVE_SOUND_AND_VIBRATE,移除队列中或正在播放的声音/振动
  • AudioManager.FLAG_VIBRATE,若进入振动铃声模式是否振动

setStreamVolume(int streamType, int index, int flags),直接设置音量大小
getStreamMaxVolume(int streamType),获得最大音量值
getStreamMinVolume(int streamType),获得最小音量值
getStreamVolume(int streamType),获得手机的当前音量,最大值为7,最小值为0,当设置为0的时候,会自动调整为震动模式

getMode(),返回当前的音频模式
setMode(int mode),设置声音模式

  • MODE_NORMAL,普通
  • MODE_RINGTONE,铃声
  • MODE_IN_CALL,打电话
  • MODE_IN_COMMUNICATION,通话

getRingerMode(),返回当前的铃声模式
setRingerMode(int ringerMode),设置铃声模式

  • RINGER_MODE_SILENT,静音
  • RINGER_MODE_VIBRATE,震动
  • RINGER_MODE_NORMAL,普通

isSpeakerphoneOn(),扩音器是否打开
setSpeakerphoneOn(boolean on),设置是否打开扩音器

isMicrophoneMute(),麦克风是否静音
setMicrophoneMute(boolean on),设置是否让麦克风静音

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值