Android使用MediaRecorder的stop方法報"stop failed"錯誤的解決方案
阿新 • • 發佈:2019-01-29
一、 問題描述
如下所示,呼叫recorder.stop()時丟擲異常:
Caused by: java.lang.RuntimeException: stop failed.
at android.media.MediaRecorder.stop(Native Method)
二、 分析原因
start和stop間隔時間太短:
三、 解決方案
呼叫stop()之前將OnErrorListener、OnInfoListener和PreviewDisplay置空:
recorder.setOnErrorListener(null);
recorder.setOnInfoListener (null);
recorder.setPreviewDisplay(null);
try {
recorder.stop();
} catch (IllegalStateException e) {
e.printStackTrace();
} catch (RuntimeException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}