必须在AndroidManifest中设置相应的权限:android:name="android.permission.RECORD_AUDIO"

1. 首先判定是否存在SD卡,并得到相应的路径

/* 检测是否存在SD卡 */

if (Environment.getExternalStorageState().equals(android.os.Environment.MEDIA_MOUNTED))

{

/* 得到SD卡得路径 */

mRecAudioPath = Environment.getExternalStorageDirectory();

/* 更新所有录音文件到List中 */

musicList(); }

2. 录音开始

/* 创建录音文件,第一个参数是文件名前缀,第二个参数是后缀,第三个参数是SD路径 */

mRecAudioFile = File.createTempFile(strTempFile, ".amr", mRecAudioPath);

/* 实例化MediaRecorder对象 */

mMediaRecorder = new MediaRecorder();

/* 设置麦克风 */

mMediaRecorder.setAudioSource(MediaRecorder.AudioSource.MIC);

/* 设置输出文件的格式 */

mMediaRecorder.setOutputFormat(MediaRecorder.OutputFormat.DEFAULT);

/* 设置音频文件的编码 */

mMediaRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.DEFAULT);

/* 设置输出文件的路径 */

mMediaRecorder.setOutputFile(mRecAudioFile.getAbsolutePath());

/* 准备 */

mMediaRecorder.prepare();

/* 开始 */

mMediaRecorder.start();

3.录音关闭

mMediaRecorder.stop();

4.播放录音文件

Intent intent = new Intent();

intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); intent.setAction(android.content.Intent.ACTION_VIEW); /* 设置文件类型 */ intent.setDataAndType(Uri.fromFile(file), "audio"); startActivity(intent);

5.过滤文件类型,实现FilenameFilter

class MusicFilter implements FilenameFilter { public boolean accept(File dir, String name) { return (name.endsWith(".amr")); } }

代码下载:/Files/lee0oo0/Examples_07_05.rar

更多相关文章

  1. NPM 和webpack 的基础使用
  2. 【阿里云镜像】使用阿里巴巴DNS镜像源——DNS配置教程
  3. Android(安卓)删除文件夹以及文件夹中的文件
  4. Unity3D Android
  5. android Preference之android:dependency(列表依赖关系)
  6. Cygwin 下编译Jni生成So文件时报错Could not find application p
  7. android:configChanges="orientation|keyboardHidden"的使用
  8. Android全屏--两种activity的实现方式
  9. android apk签名(为什么 如何做 验证) -- 转

随机推荐

  1. android 用LruCache读取大图片并缓存
  2. 从J2EE转向Android的第一天
  3. ionic应用的Android打包签名发布步骤
  4. android 好看的自定义日历
  5. Android(安卓)获取局域网内网IP地址
  6. Android成长的故事——Android组件_ Text
  7. 【转载】Android(安卓)Bander设计与实现
  8. Android(安卓)Studio3.0配置Butterknife8
  9. Android(安卓)NDK&JNI开发之Native崩溃日
  10. Android(安卓)捕获错误日志 UncaughtExce