android 音量控制setVolumeControlStream

当开发多媒体应用或者游戏应用的时候,需要使用音量控制键来设置程序的音量大小。在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实例:

Java代码

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)得到的是该类型音量的最大值,可以根据这个值计算你需要的音量,我这里直接调到最大.

时间: 2024-11-06 16:03:29

android 音量控制setVolumeControlStream的相关文章

android音量知识总结

当开发多媒体应用或者游戏应用的时候,需要使用音量控制键来设置程序的音量大小.在Android系统中有多中音频流,通过Activity中的函数 setVolumeControlStream(int streamType)可以设置该Activity中音量控制键控制的音频流,一般在onCreate函数中设置. Android中有如下几种音频流: •AudioManager.STREAM_MUSIC /** The audio stream for music playback */•AudioMana

WPF 媒体播放器(MediaElement)实例,实现进度和音量控制

WPF 视频音频播放控件MediaElement实现进度控制,音量控制实例 说明: 1.Volume控制音量的大小,double类型,并且实现了属性依赖,可以用来双向绑定:在 0 和 1. 之间的线性层表示媒体的数量.默认值为 0.5. 2.Position 获取或设置当前播放的位置,TimeSpan类型,没有实现属性依赖,不能用于双向绑定. 3.获取媒体文件的时间总长度,需要在MediaOpended事件设置 需要注意的是MSDN中有对NaturalDuration的备注: 在引发 Media

Android中控制Dialog呈现的时间

用线程控制dialog的呈现时间,思路很简单,直接show代码了,我也是为了方便自己记录 private void showProgressDialog() { pDialog = new ProgressDialog(mContext); pDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER); pDialog.setProgress(100); pDialog.setMessage("请稍等一秒..."); pDialog.se

win7音量控制图标不见了怎么办啦?

1.打开程序管理器(ctrl+alt+delete)2.在进程那里找到"explorer.exe",然后按结束进程(此时工具栏会消失)3.然后在文件(程序管理器左上角),点击"新任务"4.然后"浏览"5.在c:/windows/system32 这个文件夹里找到"systray.exe"然后点"确定"6.再一次,打开文件,新任务,在空白栏里打: explorer.exe, 确定7.图标会显示. win7音量

力度音量控制

当演奏力度不相同时,音量也不相同,有的乐器力度和音量成比例,有的不成比例.为了真实还原,分两种情况记录力度音量采样,即:等响采样 和比例采样.力度以分层,区分音色,力度音量根据乐器特点,选择合适的记录还原方式,以便把失真降到最低. 力度音量音色还原: 1. 等响采样还原:每层力度音量相同,但音色不同.因每层力度音量相同,不管使用那一层,都相当于一层,用一个0%-100%推扭控制音量输出 在0%-100%,同时根据推扭数值,在那个层力度区域,就使用那一层. 2. 比例采样还原:每层力度音量不同,音

isual Studio跨平台开发实战(4) - Xamarin Android基本控制项介绍

原文 isual Studio跨平台开发实战(4) - Xamarin Android基本控制项介绍 前言 不同于iOS, Xamarin 在Visual Studio中针对Android, 可以直接设计使用者介面. 在本篇教学文章中, 笔者会针对Android的专案目录结构以及基本控制项进行介绍, 包含TextView, EditView, Toggle/ Switch以及Seekbar控制项. Android专案目录结构 在Visual Studio建立Android 应用程式专案后, ??

android自定义view仿照MIUI中音量控制效果

先看效果图: 这就是miui中的音量效果图,实现思路是自定义视图,绘制圆环,然后设置进度显示. 核心代码在onDraw中实现如下: @Override protected void onDraw(Canvas canvas) { float cx = getMeasuredWidth() / 2; float cy = getMeasuredHeight() / 2; r1 = cx - w1 / 2; r2 = cx - w1 / 2 - w2 / 2; r3 = cx - w1 / 2 -

5.cocos2dx中关于draw绘图,声音和音效,预加载,播放与停止Vs暂停和恢复,音量控制

 1 draw绘图 头文件 T19Draw.h #ifndef __T19Draw_H__ #define __T19Draw_H__ #include "cocos2d.h" #include "TBack.h" USING_NS_CC; class T19Draw:public TBack { public: static CCScene * scene(); CREATE_FUNC(T19Draw); bool init(); void draw(); }

android中控制ListView宽度和高度

============问题描述============ 给listveiw填充item布局都是wrap_content,listview自身也使用wrap_content,可是实际显示效果listview宽度都是全屏,求解决办法 item布局: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"     android:layout_width="wrap_content