다음 코드를 사용하여 레코더를 만들었습니다. 오디오 녹음을 시작하고 중지 할 수 있으며 위치에 제대로 저장됩니다. 하지만 이제 음성 녹음기를 일시 중지 할 수있는 권한이 있습니다.Android : 음성 녹음기 및 이력서 일시 중지
오디오 녹음기를 일시 중지하는 방법은 무엇입니까? 그리고 음성 녹음을 재개합니까? 내 삼성 갤럭시 에이스에서 음성 녹음 appliation을 보았습니다. 일시 중지 버튼이 있습니다.
누군가 나를 밝힐 수 있습니까? 첫 번째 기사에 따르면이 2 페이지
http://developer.android.com/guide/topics/media/index.html http://developer.android.com/reference/android/media/MediaRecorder.html
밖으로
public class audio {
final MediaRecorder recorder = new MediaRecorder();
final String path;
/**
* Creates a new audio recording at the given path (relative to root of SD card).
*/
public audio(String path) {
this.path = sanitizePath(path);
}
private String sanitizePath(String path) {
if (!path.startsWith("/")) {
path = "/" + path;
}
if (!path.contains(".")) {
path += ".3gpp";
}
return Environment.getExternalStorageDirectory().getAbsolutePath() + path;
}
/**
* Starts a new recording.
*/
public void start() throws IOException {
String state = android.os.Environment.getExternalStorageState();
if(!state.equals(android.os.Environment.MEDIA_MOUNTED)) {
throw new IOException("SD Card is not mounted. It is " + state + ".");
}
// make sure the directory we plan to store the recording in exists
File directory = new File(path).getParentFile();
if (!directory.exists() && !directory.mkdirs()) {
throw new IOException("Path to file could not be created.");
}
try {
recorder.setAudioSource(MediaRecorder.AudioSource.MIC);
recorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP);
recorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
recorder.setOutputFile(path);
recorder.prepare();
recorder.start();
} catch (Exception e) {
e.printStackTrace();
// TODO: handle exception
}
}
/**
* Stops a recording that has been previously started.
*/
public void stop() throws IOException {
recorder.stop();
recorder.reset();
recorder.release();
}
public void pause() {
}
}
녹음기가 아니라 MediaPlayer 사용할 수 있습니다. 그게 내가 지금이 문제가 :( –
나는 불가능한 말을하는 것을 싫어하지만 여기에 또 다른 같은 stackoverflow 게시물 - http : // stackoverflow .com/questions/6128440/is-there-pause-available-in-mediarecorder-class –
이것은 네이티브 API에 누락 된 진짜 짜증나는 기능입니다. ( –