概述
总结一下系统各种音量的获取方法,可直接调用。
一、监听手机音量键,改变系统媒体音量:
在activity页面重写onKeyDown方法,监听手机音量加、减键,上调或减少媒体音量,或者其他音量
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
switch (keyCode){
case KeyEvent.KEYCODE_VOLUME_UP:
{
audioManager.adjustStreamVolume(AudioManager.STREAM_MUSIC, AudioManager.ADJUST_RAISE, AudioManager.FLAG_PLAY_SOUND | AudioManager.FLAG_SHOW_UI);
break;
}
case KeyEvent.KEYCODE_VOLUME_DOWN:
{
audioManager.adjustStreamVolume(AudioManager.STREAM_MUSIC, AudioManager.ADJUST_LOWER, AudioManager.FLAG_PLAY_SOUND | AudioManager.FLAG_SHOW_UI);
break;
}
default:
break;
}
return true;
}
二、获取系统各种声音值
/**
* 获取系统各种声音最大值
* @param type 通话音量值=AudioManager.STREAM_VOICE_CALL
* 系统音量值=AudioManager.STREAM_SYSTEM
* 系统铃声值=AudioManager.STREAM_RING
* 音乐音量值=AudioManager.STREAM_MUSIC
* 闹铃音量值=AudioManager.STREAM_ALARM
* 提示声音音量值=AudioManager.STREAM_NOTIFICATION
* **/
public static int getStreamMaxVolume(Activity activity, int type) {
AudioManager am = (AudioManager) activity.getSystemService(Context.AUDIO_SERVICE);
return am.getStreamVolume(type);
}
/**
* 获取系统各种声音当前值
* **/
public static int getStreamVolume(Activity activity, int type) {
AudioManager am = (AudioManager) activity.getSystemService(Context.AUDIO_SERVICE);
return am.getStreamVolume(type);
}
/**
* 设置系统各种声音
* @param activity
* @param streamType 通话音量值=AudioManager.STREAM_VOICE_CALL
* 系统音量值=AudioManager.STREAM_SYSTEM
* 系统铃声值=AudioManager.STREAM_RING
* 音乐音量值=AudioManager.STREAM_MUSIC
* 闹铃音量值=AudioManager.STREAM_ALARM
* 提示声音音量值=AudioManager.STREAM_NOTIFICATION
* @param index 设置音量的大小
* @param flags 标志位,不太清楚做什么的
* **/
public static void setStreamVolume(Activity activity, int streamType, int index, int flags) {
AudioManager am = (AudioManager) activity.getSystemService(Context.AUDIO_SERVICE);
am.setStreamVolume(streamType, index, flags);
}
最后
以上就是落寞大门为你收集整理的Android 系统各种音量的获取及音量的上调与下调的全部内容,希望文章能够帮你解决Android 系统各种音量的获取及音量的上调与下调所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复