From: SnickerSun Date: Sat, 2 Oct 2021 16:50:19 +0000 (+0800) Subject: 解决A9 监听录音时由于任务执行过快 录音源被占抛异常 造成的 应用crash X-Git-Url: http://git.snicker.com.cn/sitemap.xml?a=commitdiff_plain;h=bd4b1beba32ba2171debac53cb0c7c3a7a9368ec;p=protocol_srv.git 解决A9 监听录音时由于任务执行过快 录音源被占抛异常 造成的 应用crash --- diff --git a/app/src/main/java/com/ic/protocolSrv/service/AudioService.java b/app/src/main/java/com/ic/protocolSrv/service/AudioService.java index 2ee1b9ce..f70132a4 100644 --- a/app/src/main/java/com/ic/protocolSrv/service/AudioService.java +++ b/app/src/main/java/com/ic/protocolSrv/service/AudioService.java @@ -120,18 +120,18 @@ public class AudioService implements MediaPlayer.OnErrorListener, MediaPlayer.On public void startRecord(String FileName) { - if (mRecorder == null) - mRecorder = new MediaRecorder(); - mRecorder.setAudioSource(MediaRecorder.AudioSource.MIC); - mRecorder.setOutputFormat(MediaRecorder.OutputFormat.AMR_NB); - mRecorder.setOutputFile(FileName); - mRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB); try { + if (mRecorder == null) + mRecorder = new MediaRecorder(); + mRecorder.setAudioSource(MediaRecorder.AudioSource.MIC); + mRecorder.setOutputFormat(MediaRecorder.OutputFormat.AMR_NB); + mRecorder.setOutputFile(FileName); + mRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB); mRecorder.prepare(); + mRecorder.start(); } catch (IOException e) { - ICLogger.e("prepare() failed"); + ICLogger.e(e.getMessage(),e); } - mRecorder.start(); } public void stopRecord() {