/**
*
* 使用意图捕获音频
*
* @time 下午12:58:03
* @author retacn yue
* @Email zhenhuayue@sina.com
*/
public class MediaRecorderDemoActivity extends Activity implements OnCompletionListener, OnClickListener {
private static final int RECORD_REQUEST = 0;
private Button btn_play, btn_record;
private Uri audioFileUri;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
findView();
}
/**
* 实例化控件
*/
private void findView() {
btn_record = (Button) this.findViewById(R.id.btn_record_audio);
btn_record.setOnClickListener(this);
btn_play = (Button) this.findViewById(R.id.btn_play_audio);
btn_play.setOnClickListener(this);
btn_play.setEnabled(false);
}
@Override
public void onClick(View v) {
if (v == btn_record) {
Intent intent = new Intent(MediaStore.Audio.Media.RECORD_SOUND_ACTION);
startActivityForResult(intent, RECORD_REQUEST);
} else if (v == btn_play) {
MediaPlayer mediaPlayer = MediaPlayer.create(this, audioFileUri);
mediaPlayer.setOnCompletionListener(this);
mediaPlayer.start();
btn_play.setEnabled(false);
}
}
@Override
public void onCompletion(MediaPlayer mp) {
btn_play.setEnabled(true);
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (resultCode == RESULT_OK) {
audioFileUri = data.getData();
btn_play.setEnabled(true);
}
}
}
分享到:
相关推荐
《Android MediaRecorder深度解析——基于源代码学习》 在Android应用开发中,MediaRecorder是一个至关重要的组件,它允许开发者录制音频、视频,并将其保存到本地文件。本篇将深入探讨MediaRecorder的使用方法,...
7. **多媒体支持**:考虑到笔记可能包含文本、图片甚至音频,应用可能集成了多媒体处理库,如Glide或Picasso用于图片加载,以及MediaRecorder或ExoPlayer处理音频录制和播放。 8. **推送通知**:为了提醒用户新的...
通过分析和学习这个简易录音机的源码,我们可以掌握Android平台上的音频录制技术,并能将其应用于更复杂的应用场景,如语音笔记、语音识别等。同时,这也是理解Android多媒体框架运作机制的一个良好起点。
MediaRecorder是Android SDK中的一个类,它允许开发者以编程方式控制音频和视频的录制。通过设置各种参数,如输出格式、编码器、分辨率等,可以定制录制过程以满足不同应用场景。 2. **MediaRecorder的基本用法**...
通过这个"AndroidRecordAAC"项目,开发者可以学习到如何在Android应用中集成录音功能,特别是如何录制AAC格式的音频,这对于开发音乐应用、语音笔记应用或者任何需要录音功能的应用都是非常有价值的。同时,此项目也...
8. **录音**:录音功能涉及到`MediaRecorder`类,它负责录制音频。开发者需要知道如何设置录音参数,开始、暂停和停止录音,并将录制的音频保存到文件。 9. **日历**:日历应用需要与系统日历服务交互,这包括添加...
他们需要利用Android SDK中的各种组件和API,如ImageView、EditText、TextView等来构建用户界面,同时使用多媒体处理库来处理图片和音频,例如使用Android的MediaRecorder和MediaPlayer类来实现录音和播放功能。...