相关疑难解决方法(0)

MediaRecorder Android 11 启动失败 -1004

在 Android 11 上,我的 MediaRecorder 无法初始化。我怀疑问题与 scopedstorage 有关,但我一直无法找出原因。我正在使用 MediaRecorder 从麦克风录制音频。我从音频中提取了振幅,所以我无意保留文件,这就是路径为 /dev/null 的原因

 var mRecorder: MediaRecorder? = null


 if (mRecorder == null) {
        mRecorder = MediaRecorder()
        mRecorder!!.setAudioSource(MediaRecorder.AudioSource.MIC)
        mRecorder!!.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP)
        mRecorder!!.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB)
        mRecorder!!.setOutputFile("/dev/null")
        try {
            mRecorder!!.prepare()
        } catch (ioe: IOException) {
            Log.e("[Monkey]", "IOException: " + Log.getStackTraceString(ioe))
        } catch (e: SecurityException) {
            Log.e("[Monkey]", "SecurityException: " + Log.getStackTraceString(e))
        }
        try {
            mRecorder!!.start()
        } catch (e: SecurityException) {
            Log.e("[Monkey]", "SecurityException: " + Log.getStackTraceString(e))
        }
Run Code Online (Sandbox Code Playgroud)

崩溃发生在 MediaRecorded.start()。/dev/null 不是 Android 11 上的有效路径吗?

日志猫:

start failed: -1004
2020-11-15 10:51:41.827 11836-11836/= …
Run Code Online (Sandbox Code Playgroud)

android mediastore kotlin

8
推荐指数
1
解决办法
931
查看次数

标签 统计

android ×1

kotlin ×1

mediastore ×1