package com.example.HyyRecord;

import android.app.Activity;
import android.content.Intent;
import android.media.MediaRecorder;
import android.net.Uri;
import android.os.Bundle;
import android.os.Environment;
import android.view.View; import java.io.File;
import java.io.IOException; public class MyActivity extends Activity {
private MediaRecorder mediaRecorder; @Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
//首先要保证这个文件夹存在
File file = new File("/sdcard/0hyyRecord");
if (!file.exists()) {
file.mkdir();
}
mediaRecorder = new MediaRecorder();
mediaRecorder.setAudioSource(MediaRecorder.AudioSource.MIC);
mediaRecorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP);
mediaRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
mediaRecorder.setOutputFile("/sdcard/0hyyRecord/" + System.currentTimeMillis() + ".3pg"); } public void startRecord(View view) {
if (Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)) {
try {
mediaRecorder.prepare();
} catch (IOException e) {
e.printStackTrace();
}
mediaRecorder.start();
} else {
System.out.println("sd卡不可用");
}
} public void stopRecord(View view) {
mediaRecorder.stop();
mediaRecorder.reset();
} @Override
protected void onDestroy() {
try {
mediaRecorder.release();
} catch (Exception e) {
e.printStackTrace();
}
super.onDestroy();
} }

界面文件:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<Button android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="开始录音"
android:onClick="startRecord"
/> <Button android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="停止录音"
android:onClick="stopRecord"
/> </LinearLayout>

最新文章

  1. iPhone 6 (iOS 9.2) extractiion failed by XRY
  2. 从PHPCMS、帝国CMS谈站长如何选择适合自己的CMS
  3. 使用jQuery来检测远程图片文件是否存在
  4. Ajax基础知识(二)
  5. SpringBoot Test集成测试
  6. ArcGIS注册数据库问题分析
  7. mysql 日期 字符串
  8. 如何用jmeter进行数据库性能测试
  9. javascript 数组的简单应用
  10. Eclipse搭建SSH框架(Struts2+Spring+Hibernate)
  11. Django框架(一)
  12. Java设计模式六大原则之场景应用分析
  13. Android开发-- findViewById()方法得到空指针
  14. 【BZOJ5146】有趣的概率 概率+组合数(微积分)
  15. [转] libcurl异步方式使用总结(附流程图)
  16. 分析(function(window, undefined) {})(window)
  17. windows rails new demo时候出错Make sure that `gem install mysql2 -v &#39;0.3.15&#39;` succeeds before bundling.
  18. log4net 使用笔记
  19. Django学习笔记之Models与ORM操作
  20. JS中立即执行函数的理解

热门文章

  1. 配置drbd高可用集群
  2. NSS_07 extjs中grid在工具条上的查询
  3. CentOS 6.X安装LAMP最高版本环境
  4. wordpress修改固定链接及修改链接后链接提示404错误的解决办法
  5. SequoiaDB数据库的一般概念介绍
  6. Asp.net MVC知识积累
  7. Jquer Ajax xmlhttp请求成功了,为什么一直在error函数里面
  8. ALTER TABLE causes auto_increment resulting key &#39;PRIMARY&#39;
  9. 序列化form表单内容为json对象
  10. Java Day 05