android调节音量——AudioManager的应用
Android中可以通过程序获取系统手机的铃声和音量。同样,也可以设置铃声和音量。Android中给出了AudioManager类来实现音量获取、音量控制。 本篇基于 Android API 中的 AudioManager 作讲述,最后给出实例。 下面是本篇大纲: 1、认识 AudioManager 2、AudioManager 主要方法介绍 3、参数解释 1、认识 AudioManager AudioManager 类位于 android.Media 包中,该类提供访问控制音量和钤声模式的操作。 2、AudioManager 主要方法介绍 邮于 AudioManager 该类方法过多,这里只讲述几个比较常用到的方法: 方法:adjustStreamVolume(int streamType, int direction, int flags)streamType为铃声类型,例如:AudioManager.STREAM_VOICE_CALL、AudioManager.STREAM_SYSTEM等,direction当传入的第一个参数为 AudioManager.ADJUST_LOWER 时,可将音量调小一个单位,传入 AudioManager.ADJUST_RAISE 时,则可以将音量调大一个单位。flags为标志位。 方法:getMode() 解释:返回当前音频模式。例如:MODE_NORMAL,MODE_RINGTONE,MODE_IN_CALLorMODE_IN_COMMUNICATION 方法:getRingerMode() 解释:返回当前的铃声模式。例如RINGER_MODE_NORMAL,RINGER_MODE_SILENT, orRINGER_MODE_VIBRATE. 方法:getStreamVolume(int streamType) 解释:取得当前手机的音量,最大值为7,最小值为0,当为0时,手机自动将模式调整为“震动模式”。 方法:setStreamVolume(int streamType, int index, int flags) 解释:改变铃声音量,解释同1,index为声音大小。 方法:setMode(int mode) 解释:改变音频模式。见get方法 方法:setRingerMode(int ringerMode) 解释:改变铃声模式。见get方法 3、参数解释 streamType常用: STREAM_ALARM警报 STREAM_MUSIC音乐回放即媒体音量 STREAM_NOTIFICATION窗口顶部状态栏Notification, STREAM_RING铃声 STREAM_SYSTEM系统 STREAM_VOICE_CALL通话 STREAM_DTMF双音多频,拨号键的声音 direction,是调整的方向,增加或减少,可以是: ADJUST_LOWER降低音量 ADJUST_RAISE升高音量 ADJUST_SAME保持不变,这个主要用于向用户展示当前的音量 flags,是附加参数: FLAG_PLAY_SOUND调整音量时播放声音 FLAG_SHOW_UI调整时显示音量条,就是按音量键出现的界面 FLAG_REMOVE_SOUND_AND_VIBRATE无振动无声音 FLAG_ALLOW_RINGER_MODESWhether to include ringer modes as possible options when changing volume. FLAG_VIBRATEWhether to vibrate if going into the vibrate ringer mode *********************************************************************** *转载务必在明显处注明:http://blog.csdn.net/xyz_lmn * * 作者:张兴业 * * 邮箱:xy-zhang@163.com * *********************************************************************** 参考: http://developer.android.com/reference/android/media/AudioManager.html 实例: http://code.google.com/p/app-soundmanager http://mobile.51cto.com/android-309353.htm 本文转自xyz_lmn51CTO博客,原文链接:http://blog.51cto.com/xyzlmn/1230783 ,如需转载请自行联系原作者