1.修改AndroidMainifest.xml文件
需要给应用分配权限,包括访问sd卡和使用话筒权限,代码如下:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.RECORD_AUDIO"/>
附注:
可用如下代码检测SD卡是否已加载
if(Environment.getExternalStorageState().equals(android.os.Environment.MEDIA_MOUNTED)) {
mRecAudioPath = Environment.getExternalStorageDirectory();
musicList();
}
else {
Toast.makeText(RecordAudioTest.this, "SD卡未加载", Toast.LENGTH_LONG).show();
}
2.开始录音
代码如下:
//创建文件,分别指定文件名,后缀,所在路径
mRecAudioFile = File.createTempFile(strTempFile, ".amr", mRecAudioPath);
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();
//释放资源
mMediaRecorder.release();
mMediaRecorder = null;
需要给应用分配权限,包括访问sd卡和使用话筒权限,代码如下:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.RECORD_AUDIO"/>
附注:
可用如下代码检测SD卡是否已加载
if(Environment.getExternalStorageState().equals(android.os.Environment.MEDIA_MOUNTED)) {
mRecAudioPath = Environment.getExternalStorageDirectory();
musicList();
}
else {
Toast.makeText(RecordAudioTest.this, "SD卡未加载", Toast.LENGTH_LONG).show();
}
2.开始录音
代码如下:
//创建文件,分别指定文件名,后缀,所在路径
mRecAudioFile = File.createTempFile(strTempFile, ".amr", mRecAudioPath);
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();
//释放资源
mMediaRecorder.release();
mMediaRecorder = null;