package com.test.audio;
import java.io.File;
import android.app.Activity;
import android.media.MediaRecorder;
import android.os.Bundle;
import android.os.Environment;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
public class AudioActivity extends Activity {
private Button record,play;
MediaRecorder recorder ;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
record = (Button) findViewById(R.id.record);
play = (Button) findViewById(R.id.play);
record.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
if(record.getTag()==null || !record.getTag().equals("ing")){
start();
}else{
stopAndSave();
}
}
});
}
private void start(){
try {
recorder = new MediaRecorder();
recorder.setAudioSource(MediaRecorder.AudioSource.MIC);
recorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4);
recorder.setAudioEncoder(3);
String path = Environment.getExternalStorageDirectory()+File.separator + "test.mp3";
if(!new File(path).exists()) new File(path).createNewFile();
recorder.setOutputFile(path);
recorder.prepare();
recorder.start(); // Recording is now started
} catch (Exception e) {
Log.e("", "prepare() failed");
}
record.setTag("ing");
record.setText("停止录音");
}
private void stopAndSave(){
recorder.stop();
// recorder.reset();
recorder.release();
recorder = null;
record.setText("开始录音");
record.setTag("");
}
}