录音初始化代码:
try{
//创建录音文件
mRecAudioFile = File.createTempFile(strTempFile, ".amr", mRecAudioPath);
//实例化MediaRecorder对象
mMediaRecorder = new MediaRecorder();
//设置MIC
mMediaRecorder.setAudioSource(MediaRecorder.AudioSource.MIC);
//设置输出文件的格式
mMediaRecorder.setOutputFormat(MediaRecorder.OutputFormat.DEFAULT);
//设置音频文件的编码
mMediaRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.DEFAULT);
//设置文件的输出路径
mMediaRecorder.setOutputFile(mRecAudioFile.getAbsolutePath());
//准备
mMediaRecorder.prepare();
//开始
mMediaRecorder.start();
}catch(Exception e){
e.printStackTrace();
}
Call setAudioSource before setOutputFormat
采用上边的步骤后:
java.lang.RuntimeException: setAudioSource failed.
原因:权限问题
在AndroidManifest.xml文件中添加:
<uses-permission
</uses-permission>