美文网首页
android静音接口

android静音接口

作者: dmcdmc | 来源:发表于2020-10-22 16:02 被阅读0次

    最近遇到这样一个问题:

    需要静音播放一段视频,播放完毕后再恢复原来用户的设置。
    功能点虽小,但需要考虑的地方挺多,所以记录下。
    代码如下:

        private boolean mUserIsMute = false;//true: 静音 false:非静音
        //静音控制
        public void silentSwitch(boolean isMute) {
            try {
                boolean muteFlag = false;
                AudioManager audioManager = (AudioManager) context.getSystemService(Context.AUDIO_SERVICE);
                if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.M) {
                    //获取当前音乐多媒体是否静音
                    muteFlag = audioManager.isStreamMute(AudioManager.STREAM_MUSIC);
                    if (isMute) {
                        mUserIsMute = muteFlag;
                        if (!muteFlag) {
                            audioManager.adjustStreamVolume(AudioManager.STREAM_MUSIC,
                                    AudioManager.ADJUST_MUTE, 0);//设为静音
                        }
                    } else {
                        if (muteFlag && !mUserIsMute) {
                            audioManager.adjustStreamVolume(AudioManager.STREAM_MUSIC,
                                    AudioManager.ADJUST_UNMUTE, 0);//取消静音
    
                        }
                    }
                } else {
                    //获取当前音乐多媒体是否静音
                    muteFlag = audioManager.getRingerMode() != RINGER_MODE_NORMAL;
                    if (isMute) {
                        mUserIsMute = muteFlag;
                        if (!muteFlag) {
                            audioManager.setRingerMode(AudioManager.RINGER_MODE_SILENT);//设为静音
                        }
                    } else {
                        if (muteFlag && !mUserIsMute) {
                            audioManager.setRingerMode(RINGER_MODE_NORMAL);//取消静音
                        }
                    }
                    audioManager.getStreamVolume(AudioManager.STREAM_RING);
                }
            } catch (Exception e) {
                Log.e(TAG, "silentSwitch: " + e);
            }
        }
    
    

    相关文章

      网友评论

          本文标题:android静音接口

          本文链接:https://www.haomeiwen.com/subject/vhqpmktx.html