android AudioManager类 详解
来源:互联网 发布:nba2k18超帅捏脸数据 编辑:程序博客网 时间:2024/04/30 12:38
通过getSystemService(Context.AUDIO_SERVICE)方法获得AudioManager实例对象。
AudioManager audiomanage = (AudioManager)context.getSystemService(Context.AUDIO_SERVICE);
audiomanager就是我们定义的控制系统声音的对象。
这里只讲述几个比较常用到的方法:
adjustVolume(int direction, int flags) ——用来控制手机音量大小,当传入的第一个参数为AudioManager.ADJUST_LOWER 时,可将音量调小一个单位,传入AudioManager.ADJUST_RAISE时,则可以将音量调大一个单位。
adjustStreamVolume(int streamType, int direction, intflags)——(以步长)调节手机音量大小
参数1:声音类型,可取为STREAM_VOICE_CALL(通话)、STREAM_SYSTEM(系统声音)、STREAM_RING(铃声)、STREAM_MUSIC(音乐)、STREAM_ALARM(闹铃声)
参数2:调整音量的方向,可取ADJUST_LOWER(降低)、ADJUST_RAISE(升高)、ADJUST_SAME
参数3:可选的标志位
setStreamVolume(int streamType, int index, intflags)——直接设置音量大小
getMode() ——返回当前音频模式,如 NORMAL(普通), RINGTONE(铃声), orIN_CALL(通话)
setMode()——设置声音模式,可取值NORMAL(普通), RINGTONE(铃声), or IN_CALL(通话)
getRingerMode()——返回当前的铃声模式。如RINGER_MODE_NORMAL(普通)、RINGER_MODE_SILENT(静音)、RINGER_MODE_VIBRATE(震动)
setRingerMode(int ringerMode) ——改变铃声模式
getStreamVolume(int streamType)——取得当前手机的音量,最大值为7,最小值为0,当为0时,手机自动将模式调整为“震动模式”。
getStreamMaxVolume(int streamType)——获得当前手机最大铃声。
setStreamMute(int streamType, boolean state
//音量控制,初始化定义
AudioManager mAudioManager = (AudioManager)getSystemService(Context.AUDIO_SERVICE);
//最大音量
int
maxVolume =mAudioManager.getStreamMaxVolume(AudioManager.STREAM_MUSIC);
//当前音量
int
currentVolume =mAudioManager.getStreamVolume(AudioManager.STREAM_MUSIC);
直接控制音量的多少:
if
(isSilent){
mAudioManager.setStreamVolume(AudioManager.STREAM_MUSIC,
0
,
0
);
}
else
{
mAudioManager.setStreamVolume(AudioManager.STREAM_MUSIC,tempVolume,
0
);
//tempVolume:音量绝对值
}
以一步步长控制音量的增减,并弹出系统默认音量控制条:
//降低音量,调出系统音量控制
if
(flag ==
0
){
mAudioManager.adjustStreamVolume(AudioManager.STREAM_MUSIC,AudioManager.ADJUST_LOWER,
AudioManager.FX_FOCUS_NAVIGATION_UP);
}
//增加音量,调出系统音量控制
else
if
(flag ==
1
){
mAudioManager.adjustStreamVolume(AudioManager.STREAM_MUSIC,AudioManager.ADJUST_RAISE,
AudioManager.FX_FOCUS_NAVIGATION_UP);
}
常用方法:
android audioManager获取音量:
先获取AudioManager实例,
AudioManager mAudioManager = (AudioManager)getSystemService(Context.AUDIO_SERVICE);
//通话音量
int max = mAudioManager.getStreamMaxVolume(AudioManager.STREAM_VOICE_CALL );
int current = mAudioManager.getStreamVolume(AudioManager.STREAM_VOICE_CALL );
//系统音量
int max = mAudioManager.getStreamMaxVolume(AudioManager.STREAM_SYSTEM );
current = mAudioManager.getStreamVolume(AudioManager.STREAM_SYSTEM );
//铃声音量
max = mAudioManager.getStreamMaxVolume( AudioManager.STREAM_RING);
current = mAudioManager.getStreamVolume(AudioManager.STREAM_RING );
//音乐音量
max = mAudioManager.getStreamMaxVolume(AudioManager.STREAM_MUSIC );
current = mAudioManager.getStreamVolume(AudioManager.STREAM_MUSIC );
//提示声音音量
max = mAudioManager.getStreamMaxVolume(AudioManager.STREAM_ALARM );
current = mAudioManager.getStreamVolume(AudioManager.STREAM_ALARM );
按键音:
AudioManager am = (AudioManager)getSystemService(AUDIO_SERVICE);
float vol = (float)0.5; //This will be half of the default system sound
am.playSoundEffect(AudioManager.FX_KEY_CLICK, vol);
- android AudioManager类 详解
- android AudioManager类 详解
- android AudioManager类 详解 .
- android AudioManager类 详解
- android AudioManager类 详解
- android AudioManager类 详解
- android AudioManager类 详解 .
- android AudioManager类 详解
- android AudioManager类 详解
- android AudioManager类 详解
- android AudioManager类 详解
- android AudioManager类 详解 .
- android AudioManager 类详解
- android AudioManager类 详解 .
- android AudioManager类 详解
- android AudioManager类详解
- android AudioManager类 详解
- android AudioManager类 详解
- Oracle to_char格式化函数
- 7、类中的几个特殊的关键字(this&super&final)
- Gecko 的 New DOM bindings
- jQuery 最新教程序列
- MFC中关于对话框的一些设置
- android AudioManager类 详解
- 在centos 6.4中安装cisco vpnclient
- C指针原理(71)-C快速入门(4)
- 没人会倒霉一辈子
- 8、抽象类与接口
- POJ 1185 炮兵阵地 (状态压缩dp)
- Guardanis Computer Monitoring Software
- 在本路径和其子路径下查找文件中包含关键字的文件
- Collection List Set Map的区别和联系