当开发多媒体应用或者游戏应用的时候,需要使用音量控制键来设置程序的音量大小。在Android系统中有多中音频流,通过Activity中的函数 setVolumeControlStream(int streamType)可以设置该Activity中音量控制键控制的音频流,一般在onCreate函数中设置。Android中有如下几种音频流(streamType是需要调整音量的类型):

AudioManager.STREAM_MUSIC /音乐回放即媒体音量/

AudioManager.STREAM_RING /铃声/

AudioManager.STREAM_ALARM /警报/

AudioManager.STREAM_NOTIFICATION /窗口顶部状态栏通知声/

AudioManager.STREAM_SYSTEM /系统/

AudioManager.STREAM_VOICECALL /通话 /

AudioManager.STREAM_DTMF /双音多频,不是很明白什么东西 /

AudioManager可以修改系统Android系统的音量,下面介绍几个AudioManager的几个音量调整方面的方法.首先是得到AudioManager实例:

AudioManager am=(AudioManager)getSystemService(Context.AUDIO_SERVICE);

调整音量方法有两种,一种是渐进式,即像手动按音量键一样,一步一步增加或减少,另一种是直接设置音量值.1、渐进式

Java代码

publicvoidadjustStreamVolume (intstreamType, intdirection, intflags)

am.adjustStreamVolume (AudioManager.STREAM_MUSIC, AudioManager.ADJUST_RAISE, AudioManager.FLAG_SHOW_UI);

解释一下三个参数

Java代码

第一个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 调整时显示音量条,就是按音量键出现的那个

0表示什么也没有

2、直接设置音量值的方法:

Java代码

publicvoidsetStreamVolume (intstreamType, intindex, intflags)

am.setStreamVolume(AudioManager.STREAM_MUSIC, am.getStreamMaxVolume(AudioManager.STREAM_MUSIC), AudioManager.FLAG_PLAY_SOUND);

am.getStreamMaxVolume(AudioManager.STREAM_VOICE_CALL);//得到听筒模式的最大值

am.getStreamVolume(AudioManager.STREAM_VOICE_CALL);//得到听筒模式的当前值

第一个和第三个参数与上面的相同第二个参数是一个音量的int值,getStreamMaxVolume(int streamType)得到的是该类型音量的最大值,可以根据这个值计算你需要的音量,我这里直接调到最大.

android 音量流类型,android 音量控制setVolumeControlStream相关推荐

  1. android nfc标签类型,Android NFC标签 开发深度解析 触碰的艺术

    原标题:Android NFC标签 开发深度解析 触碰的艺术 本文来自于CSDN博客,作者:郭朝,已获授权,版权归原作者所有,未经作者同意,请勿转载. 欢迎同有博客好文章的作者加微信(ID:tm_fo ...

  2. android 判断fragment类型,Android 判断当前Fragment是否可见(Visible)

    判断当前Fragment是否可见 public abstract class BaseFragment extends Fragment { /** Fragment当前状态是否可见*/ protec ...

  3. android直播流渲染,Android手机直播之处理技术分析

    前一篇我为大家介绍了Android手机直播的采集技术,这一篇继续为大家介绍直播流程中对视频和音频的处理技术.图玩智能科技为企业提供直播平台的二次开发服务以及各类app的开发,欢迎随时咨询www.toi ...

  4. Android输入法window类型,android输入法windowSoftInputMode属性详解章

    android:windowSoftInputMode activity主窗口与软键盘的交互模式,可以用来避免输入法面板遮挡问题,Android1.5后的一个新特性. 这个属性能影响两件事情: [一] ...

  5. android 瀑布流 空白,Android瀑布流优化,解决Recyclerview展示大批量图片时Item自动切换、闪烁、空白等问题...

    本文涉及的代码案例可以在下方的链接中找到,如果对你有帮助,请给个Star(#^.^#) 问题分析 这段时间业务需求用到RecyclerView瀑布流加载并展示大批量图片,但一开始单纯使用Recycle ...

  6. android音量控制setVolumeControlStream

    当开发多媒体应用或者游戏应用的时候,需要使用音量控制键来设置程序的音量大小.在Android系统中有多中音频流,通过Activity中的函数setVolumeControlStream(int str ...

  7. android 控制app声音,Android底层开发之APP音量单独控制

    Android底层开发之APP音量单独控制 目前Android的音乐播放软件都的音量控制都是随着系统的总Master音量变化的.想要实现和windows中一样,每个APP的媒体音量可以单独控制. 控制 ...

  8. android:SeekBar控制系统音量(媒体音量键和通话音量键的diallog自动切换调节控制)

    前言:之前看了很多关于android的关于音量调节的文章,始终没有自己想要的那种或者没查询到,于是下载了一位网友上传的资源demo上进行了改编和调整,修改出来一个可以在媒体和通话过程中两种场景下自动切 ...

  9. Android 音频源码分析——音量调节流程

    源码分析基于android9.0 一.声音类型 对于大多数手机用户来说,操作手机音量按键可以看到,声音类型分为四种:媒体.铃声.闹钟.通话,但是其系统内部则分为十几种类型. 声⾳类型用来区分不同播放用 ...

  10. 客户手动调节音量的范围,修改默认音量各类型音量,按音量键或手动调进度条触发流程,调节音量大小级数每次加减的级数,同时操作指定多个音量类型,更改开机音量,通过底层节点来调节音量大小,音量控制的对话框UI

    frameworks/base/services/core/java/com/android/server/audio/AudioService.java 客户手动调节音量的范围:就是按音量键出来的进 ...

最新文章

  1. wpf里的menu怎么用_股市里的两市成交量是什么,它反映了什么,我是怎么用它来定投的...
  2. Jedis的Spring配置
  3. UVA 11582 Colossal Fibonacci Numbers!【数学】
  4. k3 审核流程图_3-金蝶K3操作流程图详解
  5. django-学生列表页的制作
  6. webdriver---API---(java版) 高级应用
  7. matlab思考,关于Matlab编程的思考(待续)
  8. Android Error:Could not find lottie.jar
  9. Spring Aop(八)——advisor标签
  10. 拼音模糊搜索 php,精确搜索加拼音搜索加模糊搜索
  11. idc机房运维巡检_20年代IDC的“新十二大”基础设施系统你都了解吗?
  12. 机电传动与控制【2】
  13. 2021年01月18号学习产品经理之电商项目从0-1
  14. cxf调用webservice
  15. 充电头PD协议和QC协议的理解
  16. http 传输原理及格式
  17. 从容器中获取宿主机IP地址
  18. winxp升级win7教程_PR CC 2015下载和安装教程
  19. 万字长文讲述:任正非,“血洗”华为
  20. ArcGisJS实现地图常用工具条、距离测量和面积测量(非官方实例)

热门文章

  1. Type-C PD充电器诱骗取电5V9V12V15V20V,XSP06+锂电池(筋膜枪)充电
  2. 方差及常见分布的方差计算与推导
  3. 网站建设中图片使用方法
  4. android studio 导入一个已有的android studio project作为lib使
  5. Hadoop HA 搭建
  6. 澳洲2022人口普查结果出炉--华人占比开始下降
  7. 嵌入式软件项目流程、项目启动说明书(示例)
  8. 手机距离传感器测试软件,距离传感器有什么用_手机距离传感器坏了
  9. Android Sensor感应器简单使用(1)
  10. 单文件PHP版视频解析源码(中间件)