总结一下系统各种音量的获取方法,可直接调用。

一、监听手机音量键,改变系统媒体音量
在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);    }

更多相关文章

  1. Tasker, Android系统增强神器
  2. Android分享---调用系统自带的分享功能
  3. Android(安卓)4.0 与 android2.3 差异
  4. Android打开系统文件管理器
  5. Android镜像文件ramdisk.img,system.img,userdata.img介绍
  6. Android——自定义控件(一)
  7. Android(安卓)WiFi系统
  8. 【 Android(安卓)10 系统启动 】系列 -- SystemServer(服务管家)
  9. Android系统服务(SystemService)简介

随机推荐

  1. Android(安卓)兼容性测试(CTS)
  2. Android(安卓)4.0音乐问题
  3. android中使用GoogleMap的地理位置服务
  4. 看了你就懂的同步与异步、阻塞与非阻塞
  5. Android(安卓)JNI技术介绍
  6. webview发展现状
  7. udacity android 实践笔记: lesson 4 par
  8. Android(安卓)Apk 代码混淆与资源文件混
  9. Android(安卓)Studio——Android(安卓)Bi
  10. Android(安卓)sqlite存储日期类型