android 通过MediaRecorder实现简单的录音示例
程序员文章站
2023-12-15 08:24:04
整理文档,搜刮出一个android 通过mediarecorder实现简单的录音示例,稍微整理精简一下做下分享。
mainactivity
package...
整理文档,搜刮出一个android 通过mediarecorder实现简单的录音示例,稍微整理精简一下做下分享。
mainactivity
package com.centaur.collectvoice; import android.media.mediarecorder; import android.os.environment; import android.support.v7.app.appcompatactivity; import android.os.bundle; import android.view.view; import android.widget.toast; import java.io.file; import java.io.ioexception; public class mainactivity extends appcompatactivity { private final static string tag = "collectvoice"; mediarecorder mediarecorder = new mediarecorder(); @override protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.activity_main); } /** * 开始按钮 * @param view * @throws ioexception */ public void onstart(view view) throws ioexception { toast.maketext(this, "开始收集", toast.length_short).show(); // 第1步:设置音频来源(mic表示麦克风) mediarecorder.setaudiosource(mediarecorder.audiosource.mic); //第2步:设置音频输出格式(默认的输出格式) mediarecorder.setoutputformat(mediarecorder.outputformat.default); //第3步:设置音频编码方式(默认的编码方式) mediarecorder.setaudioencoder(mediarecorder.audioencoder.default); //创建一个临时的音频输出文件 // audiofile = file.createtempfile("record_", ".amr"); if (fileutils.makefolder("voice")){//一个简单的判断文件夹是不是存在 不存在就创建 string path = environment.getexternalstoragedirectory().tostring() + "/" + "voice/"; string filepath =path+"record_.amr"; file file = new file(filepath); //第4步:指定音频输出文件 mediarecorder.setoutputfile(file.getabsolutepath()); //第5步:调用prepare方法 mediarecorder.prepare(); //第6步:调用start方法开始录音 mediarecorder.start(); } } /** * 关闭按钮 * @param view */ public void onstop(view view) { toast.maketext(this, "停止收集", toast.length_short).show(); mediarecorder.stop(); } }
工具类中用到的方法
public static boolean makefolder(string folder){ file filefolder = new file(environment.getexternalstoragedirectory().tostring() + "/" + folder); if(!filefolder.exists()){ filefolder.mkdir(); if(filefolder.exists()){ log.d(tag,folder+"创建成功"); } else { log.d(tag,folder+"创建失败"); } } return true; }
布局文件
<?xml version="1.0" encoding="utf-8"?> <linearlayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/activity_main" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" android:paddingbottom="@dimen/activity_vertical_margin" android:paddingleft="@dimen/activity_horizontal_margin" android:paddingright="@dimen/activity_horizontal_margin" android:paddingtop="@dimen/activity_vertical_margin" tools:context="com.centaur.collectvoice.mainactivity"> <button android:onclick="onstart" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="收集声音" /> <button android:onclick="onstop" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="停止声音" /> </linearlayout>
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
推荐阅读
-
android 通过MediaRecorder实现简单的录音示例
-
Android App端与PHP Web端的简单数据交互实现示例
-
Android开发实现的简单媒体播放器功能示例
-
android音乐播放简单实现的简单示例(MediaPlayer)
-
Android中验证码倒计时的简单实现方法示例
-
Android开发实现简单的观察者与被观察者示例
-
Android App端与PHP Web端的简单数据交互实现示例
-
Android用MVP实现一个简单的类淘宝订单页面的示例
-
Android 通过onDraw实现在View中绘图操作的示例
-
Android简单的利用MediaRecorder进行录音的实例代码