首页 > 代码库 > 录音Demo

录音Demo

xml文件

技术分享
  <TextView        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="录音" />    <Button        android:id="@+id/button1"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="开启录音" />    <Button        android:id="@+id/button2"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="停止录音" />
View Code

activity:

private Button button1;    private Button button2;private MediaRecorder mr;    File path;@Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_audio);                button1=(Button) findViewById(R.id.button1);        button2=(Button) findViewById(R.id.button2);    button1.setOnClickListener(new OnClickListener() {                        @Override            public void onClick(View v) {                // TODO Auto-generated method stub                File file=new File("/sdcard/audio");                if(!file.exists()){                    file.mkdirs();                }                                  path=new File(file+"/YY"+new DateFormat().format("yyyyMMdd_hhmmss",                        Calendar.getInstance(Locale.CHINA))+".amr");                   Toast.makeText(getApplicationContext(), "正在录音,录音文件在"+path.getAbsolutePath(), Toast.LENGTH_LONG)                   .show();                                      // 创建录音对象                   mr = new MediaRecorder();                   // 从麦克风源进行录音                   mr.setAudioSource(MediaRecorder.AudioSource.DEFAULT);                   // 设置输出格式                   mr.setOutputFormat(MediaRecorder.OutputFormat.DEFAULT);                   // 设置编码格式                   mr.setAudioEncoder(MediaRecorder.AudioEncoder.DEFAULT);                   // 设置输出文件                   mr.setOutputFile(path.getAbsolutePath());                   try {                           // 创建文件                       path.createNewFile();                           // 准备录制                           mr.prepare();                           // 开始录制                           mr.start();                           button1.setText("录音中……");                   } catch (IllegalStateException e) {                           e.printStackTrace();                   } catch (IOException e) {                           e.printStackTrace();                   }                             }        });        // 停止按钮点击事件        button2.setOnClickListener(new View.OnClickListener() {                @Override                public void onClick(View v) {                        if (mr != null) {                                mr.stop();                                mr.reset(); //重设                                mr.release();                                mr = null;                              //  button1.setText("录音");                                Toast.makeText(getApplicationContext(), "录音完毕", Toast.LENGTH_LONG).show();                        }                }        });}    

 

录音Demo