首页 > 代码库 > android 录音

android 录音

android录音这是也是很平常的一件事 特别是那种社交app用的多

接下来就说一个dome 算是复习了把

先看下录音的架构图把

技术分享

我想上面的图应该可以看懂把 

我先说下我做的app的效果图把

技术分享

点击停止会保存到sd卡上

技术分享

直接看java代码把

public class MainActivity extends Activity {	private TextView tv;	private MediaRecorder mr;	private Timer timer;	private TimerTask task;	@Override	protected void onCreate(Bundle savedInstanceState) {		super.onCreate(savedInstanceState);		setContentView(R.layout.activity_main);				tv = (TextView) findViewById(R.id.tv);		mr = new MediaRecorder();				timer = new Timer();		task = new TimerTask() {						@Override			public void run() {				//使用handler				handler.sendEmptyMessage(0);			}		};	}	int t = 0;	//使用 Handler 修改进度	Handler handler = new Handler(){		public void handleMessage(android.os.Message msg) {			switch (msg.what) {			case 0:				//更新时间				tv.setText("录音的时间: "+(t++));				break;			}		};	};		public void l(View v){		try {			//设置音频资源 麦克风			mr.setAudioSource(AudioSource.MIC);			//设置输出格式			mr.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP);			//设置录音格式			mr.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);			//设置输出路径			mr.setOutputFile("/mnt/sdcard/ab.mp3");			//准备			mr.prepare();			//开始			mr.start();			//更新进度			timer.schedule(task, 0, 1000);		} catch (Exception e) {			e.printStackTrace();		}			}		public void t(View v){		//		mr.stop();		mr.reset();		mr.release();		//		timer.cancel();		Toast.makeText(this, "录音文件保存成功", 1000).show();	}}

  这里需要注意的是 需要加入权限

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

 

android 录音