美文网首页
安卓6.0以下的录制音视频的权限问题

安卓6.0以下的录制音视频的权限问题

作者: 周大侠侠侠侠侠侠侠侠侠侠侠侠侠 | 来源:发表于2018-09-12 11:31 被阅读0次

    主要是在魅族和Vivo手机中
    魅族(安卓4.4)有系统自带的权限控制
    Vivo(安卓5.1)有i管家进行控制
    所有不能只判断是不是有权限 还需要进行判断是否可以进行录制音视频

        /**
         * 判断是否录音可以使用
         *
         * @return 是否
         */
        public static boolean isAudioCanUse() {
            int audioFormat = AudioFormat.ENCODING_PCM_16BIT;
            int channelConfig = AudioFormat.CHANNEL_IN_STEREO;
            int sampleRateInHz = 44100;
            int bufferSizeInBytes = AudioRecord.getMinBufferSize(sampleRateInHz,
                    channelConfig, audioFormat);
            int audioSource = MediaRecorder.AudioSource.MIC;
            AudioRecord audioRecord = new AudioRecord(audioSource, sampleRateInHz,
                    channelConfig, audioFormat, bufferSizeInBytes);
            //开始录制音频
            try {
                // 防止某些手机崩溃,例如联想
                audioRecord.startRecording();
            } catch (IllegalStateException e) {
                e.printStackTrace();
                return false;
            }
            /*
             * 根据开始录音判断是否有录音权限
             */
            if (audioRecord.getRecordingState() != AudioRecord.RECORDSTATE_RECORDING) {
                return false;
            }
            audioRecord.stop();
            audioRecord.release();
            audioRecord = null;
            return true;
        }
    
        /**
         * 判断是否摄像头可以使用
         *
         * @return 是否可以使用
         */
        public static boolean isCameraCanUse() {
            boolean canUse = true;
            Camera mCamera = null;
            try {
                mCamera = Camera.open();
                Camera.Parameters mParameters = mCamera.getParameters();
                mCamera.setParameters(mParameters);
            } catch (Exception e) {
                canUse = false;
            }
            if (mCamera != null) {
                mCamera.release();
            }
            return canUse;
        }
    

    相关文章

      网友评论

          本文标题:安卓6.0以下的录制音视频的权限问题

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