Android中MediaRecorder.stop()报错 java.lang.RuntimeException: stop failed.
E/AndroidRuntime(7698):Causeby:java.lang.RuntimeException:stopfailed.if(mediarecorder!=null){mediarecorder.stop();mediarecorder.release();mediarecorder=null;if(mCamera!=null){...
·
- E/AndroidRuntime(7698): Cause by: java.lang.RuntimeException: stop failed.
if (mediarecorder != null) {
mediarecorder.stop();
mediarecorder.release();
mediarecorder = null;
if (mCamera != null) {
mCamera.release();
mCamera = null;
}
}
现在,在mediarecorder.stop();这一句报错了,现在在mediarecorder.stop();这句之前加几句就不会报错了
mediarecorder.setOnErrorListener(null);
mediarecorder.setOnInfoListener(null);
mediarecorder.setPreviewDisplay(null);
修改之后:
if (mediarecorder != null) {
//added by ouyang start
try {
//下面三个参数必须加,不加的话会奔溃,在mediarecorder.stop();
//报错为:RuntimeException:stop failed
mediarecorder.setOnErrorListener(null);
mediarecorder.setOnInfoListener(null);
mediarecorder.setPreviewDisplay(null);
mediarecorder.stop();
} catch (IllegalStateException e) {
// TODO: handle exception
Log.i("Exception", Log.getStackTraceString(e));
}catch (RuntimeException e) {
// TODO: handle exception
Log.i("Exception", Log.getStackTraceString(e));
}catch (Exception e) {
// TODO: handle exception
Log.i("Exception", Log.getStackTraceString(e));
}
//added by ouyang end
mediarecorder.release();
mediarecorder = null;
if (mCamera != null) {
mCamera.release();
mCamera = null;
}
}
更多推荐


所有评论(0)