Android多媒体功能开发(3)——调用系统Activity录制、选择、播放音频

一、音频录制

音频录制动作为MediaStore.Audio.Media.RECORD_SOUND_ACTION。这个动作不支持通过EXTRA_OUTPUT属性设置目标音频文件(拍照和视频录制动作支持设置目标文件),只能从返回的Intent中获得生成的音频在MediaStore中的Uri。音频的Uri格式为:

        content://media/external/audio/media/202300

最后的数字是音频在MediaStore中的ID,再通过MediaStore的ContentProvider可得到文件位置等信息。再根据需要进行处理,比如可以将文件拷贝到应用的目录下。

下面是具体的启动录制音频界面的代码:

Intent intent = new Intent(MediaStore.Audio.Media.RECORD_SOUND_ACTION);
startActivityForResult(intent, RECORD_AUDIO);

启动后的界面如下图:

录音完成退出录音界面后,会调用主活动的onActivityResult方法。所以在该方法中,对新录制的音频进行处理。录制音频返回新生成的音频,Uri格式,一般将文件拷贝到需要的目录。代码如下:

if(requestCode==RECORD_AUDIO && resultCode==RESULT_OK) {
        Uri uri = data.getData();   //  获得生成音频的uri
        Toast.makeText(this, "录制音频成
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

nanoage

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值