当前位置: 代码迷 >> Android >> Android项目开发5-《星星生活志》1.使用MediaRecorder录制音频
  详细解决方案

Android项目开发5-《星星生活志》1.使用MediaRecorder录制音频

热度:73   发布时间:2016-04-28 05:36:26.0
Android项目开发五-《星星生活志》1.使用MediaRecorder录制音频

Android设备实现录制音频的简单demo

转载请注明;

http://blog.csdn.net/u013670933/article/details/26089487


代码如下:

public class MainActivity extends Activity {	File soundFile;//输出文件	MediaRecorder mRecorder;	@Override	protected void onCreate(Bundle savedInstanceState) {		super.onCreate(savedInstanceState);		setContentView(R.layout.activity_main);	    inintView();//初始化	}	//初始化	private void inintView() {		mRecorder = new MediaRecorder();		//设置音频来源		mRecorder.setAudioSource(MediaRecorder.AudioSource.MIC);		//设置声音输出格式----一定要在编码格式之前设置		mRecorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP);		//设置声音的编码格式		mRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);	}	//EventOfClick	public void onClick(View view){		switch(view.getId()){		case R.id.record:			try{			//设置保存音乐的文件				soundFile = new File(Environment						.getExternalStorageDirectory()						.getCanonicalFile()+"/sound.amr");				mRecorder.setOutputFile(soundFile.getAbsolutePath());				mRecorder.prepare();				//开始				mRecorder.start();			}catch(Exception e){				e.printStackTrace();			}			break;		case R.id.stop:			if(soundFile!=null && soundFile.exists()){       //避免未用到造成空指针				mRecorder.stop();				mRecorder.release();				mRecorder = null;			}			break;		default:			break;		}	}	//释放资源	@Override	protected void onDestroy() {		if(soundFile!=null && soundFile.exists()){			mRecorder.stop();			mRecorder.release();			mRecorder = null;		}		super.onDestroy();	}}

布局文件仅有两个按钮,在此略过。

权限设置:

<uses-permission android:name="android.permission.RECORD_AUDIO"/><uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

Demo示例代码:

http://download.csdn.net/detail/u013670933/7362171


  相关解决方案