我是靠谱客的博主 落寞大门,最近开发中收集的这篇文章主要介绍Android 系统各种音量的获取及音量的上调与下调,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

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

一、监听手机音量键,改变系统媒体音量
在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 系统各种音量的获取及音量的上调与下调所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(76)

评论列表共有 0 条评论

立即
投稿
返回
顶部