我正在使用以下设置来初始化MediaRecorder
。我的应用在大多数设备上工作正常,但在三星设备上,在MediaRecorder.stop()
时出现错误。
recorder = new MediaRecorder();
recorder.setAudioSource(MediaRecorder.AudioSource.MIC);
recorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4);
recorder.setAudioEncoder(MediaRecorder.OutputFormat.AMR_NB);
recorder.setAudioEncodingBitRate(16*44100);
recorder.setAudioSamplingRate(44100);
它会抛出以下错误信息。
java.lang.IllegalStateException:
at android.media.MediaRecorder._stop (MediaRecorder.java)
at android.media.MediaRecorder.stop (MediaRecorder.java:1440)
at com.appname.stopRecording (add_new.java:4)`
这可能是因为我在三星设备上使用MIC作为音频源而不是VOICE_CALL导致的。