如何解决Kotlin Android 11 - getMaxAmplitude()
在将我的 Android 设备更新到 Android 11 之前,我能够使用 MediaRecorder 以这种方式实现 getMaxAmplitude():
var amplitude: Double
public void start() {
if (mRecorder == null) {
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 (IOException e) {
e.printStackTrace()
}
mRecorder.start()
amplitude = mRecorder.maxAmplitude()
}
}
我看到了 this topic,并意识到我不能再在 Android 11 中使用“/dev/null”了。
我已经尝试使用“absolutePath/record.3gp”解决方案,但我仍然无法从函数中获取幅度值。也许我没有正确实施它,我不确定了..
如果您知道如何在 Android 11 中实现 getMaxAmplitude(),请告诉我?有人试过吗?
谢谢!
编辑: 如果可能,我只需要 getMaxAmplitude 的值。不保存录音文件可以使用这个功能吗?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。