安卓:媒体记录:启动失败:-38(android: media recorder : start f

2019-09-23 06:35发布

简介:如何检查是否录音在后台在其他一些应用程序已经在运行。

详细信息:录音:如果录音是从本机应用程序的背景已经在运行。 现在我已经实现语音录音作为我的应用程序的功能之一。

问题:当我尝试记录我在同一时间的应用程序,它提供了错误:

  : E/MediaRecorder: start failed: -38
  : E/MyApp: [1162][com.sec.MyApp.multimedia.RecordMyVoice]java.lang.IllegalStateException
  : E/MyApp:    at android.media.MediaRecorder.start(Native Method)
  : E/MyApp:    at com.sec.MyApp.multimedia.RecordMyVoice.doInBackground(RecordMyVoice.java:100)

代码在RecordMyVoice.java 100线:

    mRecorder = new MediaRecorder();
    mRecorder.setAudioSource(MediaRecorder.AudioSource.MIC);
    mRecorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP);
    mRecorder.setOutputFile(mFileName);
    mRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
    mRecorder.prepare();
    mRecorder.start(); //code at 100th line

但问题是,因为已经录音在后台运行。 因此,有没有什么办法阻止录音如果在其他一些应用程序运行。

任何投入将有很大的帮助。

Answer 1:

我有同样的错误-38,我发现有是通过(AudioRecord)使用话筒的另一项后台服务,禁用后台服务时,它的工作。



Answer 2:

检查你的文件路径,该目录必须存在。



文章来源: android: media recorder : start failed: -38