私はこの作業コードを持っています。限られた時間だけ録音する必要があります。これはどうすればいいですか?Androidオーディオの録音時間を自動的に制限する方法はありますか?
MediaRecorder recorder = new MediaRecorder();
File outputFile = new File(file);
recorder.setAudioSource(MediaRecorder.AudioSource.MIC);
recorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4);
recorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
recorder.setOutputFile(outputFile.getAbsolutePath());
try {
recorder.prepare();
} catch (IllegalStateException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
recorder.start();
recorder.setMaxDuration(60000);
// stop
recorder.stop();
recorder.reset();
recorder.release();
これを実際にwoliuの回答と組み合わせて使用するのはすばらしいアプローチです。彼の答えは録音を制限しますが、あなたの答えは、それが完了したことをユーザーに知らせるための良い解決策です。例えば、時間制限の後にトーストを出すことができます。ありがとう!アクティビティ( 'Thread'ではなく)を通して' Toast'をポストしなければなりませんが、これは別の問題です。 – Azurespot