Android MP3录音功能(能暂停,含源码,可编译)

来源:互联网 发布:淘宝上的古着 编辑:程序博客网 时间:2024/04/30 00:04

项目需求ios和Android客户端要使用录音功能,格式要求为mp3,一直百度都找不到MP3录音的源码,国外也只能找到相关说明,却也没有找到源码,

最多也就只找到编译好的so文件,也没有例子,使用说明,完全没法使用!!!坑哥啊~So~~只好自己做吧~~

例子为一个超级简单的MP3录音器...项目是可以直接运行而不需要配置下面一大串东西的!!!

(看到资源有人评论说要Android-8...这个是为适应最大部分的安卓系统...就不知道项目可以修改编译用的SDK版本??或者下次我打包项目吧...)

==========以下为Eclipese编译C++的配置,若只需要录音功能可直接跳过==========

文章主要内容出处:  

                 http://www.cnblogs.com/dekins/archive/2012/08/22/2650131.html

                 http://www.cnblogs.com/dekins/archive/2012/08/22/2651553.html

                 http://www.haogongju.net/art/1305769

                 (对部分内容进行修改更新,最新的NDK-r8是不需要安装Cygwin即可完成NDK开发的,内置了C++编译器)

准备工作:

1 .下载JDK 7:http://www.oracle.com/technetwork/java/javase/downloads/index.html

2.下载Eclipse: http://www.eclipse.org/downloads/

3.下载Android SDK: http://developer.android.com/sdk/index.html

4.下载Android NDK: http://developer.android.com/tools/sdk/ndk/index.html

 

第一步:安装JDK,这是Eclipse运行的基本条件.

 

clip_image001


安装完成后,配置环境变量:

右键电脑属性,点击 “高级系统设置”

 

clip_image002


新建环境变量:JAVA_HOME 值为:C:\Program Files\Java\jdk1.6.0_33

新建环境变量:CLASSPATH 值为:.;%JAVA_HOME%\lib;

在系统变量Path的值的后面加入:%JAVA_HOME%\bin;。

配置好后,验证下是否安装成功,win+R,弹出cmd命令,输入 java –version

如果出现以下界面说明成功,JDK环境已经配置好。

 

clip_image003


第二步:安装eclipse,将下载好的eclipse解压到你的电脑中,直接点击 eclipse 运行.

 

第三步:安装android sdk,点击installer_r20.0.3-windows运行.

我把程序安装在D:\android下面.

完成后,为了以后使用方便,也配置下环境变量

新建环境变量:ANDROID_SDK 值为:D:\android\platform-tools;D:\android\tools

在系统PATH环境变量种加入:%ANDROID_SDK%

验证下是否成功,cmd中输入 adb -h , 成功后会出现如下界面:

 

clip_image004

 

安装完android sdk后出现 android sdk manager,钩选你需要api,为了下载速度快。

我就钩选android2.3.3和android4.0.3。

 

clip_image005

 

第四步:安装eclipse NDK

启动eclipse," Help" ->"Install New Software" -> "Available Software" -> "Add Repository" –> "Location:"输入

http://dl-ssl.google.com/android/eclipse

 

clip_image006

 

加载完成后钩选以下选项,点击 下一步完成安装。

 

clip_image007

 

clip_image008

 

安装完成后,重启eclipse

解压android-ndk-r8b-windows.zip到d:\android-ndk-r8b

打开eclipse,在菜单中找到window->preferences,设置NDK的目录为刚解压的目录.

 

clip_image009

 

现在已经配置好了android的开发环境,接下来编译运行下hello-jni的示例

项目路径:D:\android-ndk-r8b\samples\hello-jni

第一步:将hello-jni项目导入到eclipse中

打开eclipse,打开菜单File->New->Project->Android Project from exsiting code


clip_image001


点击 Next,选择NDK中的hello-jni目录,点击Finish完成导入.


clip_image002


现在来看下项目文件结构,jni目录就是我们需要编译的C++


clip_image003


把HelloJni部署到android模拟器上,运行项目,发现运行时出现错误


clip_image004


现在到NDK-r8派上用场,就利用它来编译c++,在项目上点击 右键,

选择Properties,打开项目属性,选中Builders选项卡,设置C++编译器.


clip_image005

clip_image006


按照下面的设置


勾选“After a “Clean””,

勾选“During manual builds”,

勾选“During auto builds”,

勾选“Specify working set of relevant resources”。

点击“Specify Resources…”勾选TestNDK工程的“jni“目录 ,Finish!

保存设置,OK!


然后将NDK_Builder移到最上面,让他优先对源码进行编译


clip_image009


下面是运行成功的界面.


clip_image010

==========End==========


若正确无误配置好后(大概要花半天时间,也就是24/2=12小时~~),

项目就可以包含编译C++的功能并且在编译Android项目前先编译出so文件了

(不知为何第一次编译落红一堆,却也能生成so文件 (⊙_⊙)? )


简单地运行过后,就会在SD卡里生成你需要的录音文件啦~~
注意哦,MP3Recorder这个类用了JNI,不能够随便修改包名类名方法名,除非你重新编译so文件~~

若只要MP3录音功能直接按照Activity的例子来做就OK啦~~

<听说这里的MP3录音Lame有个GPL协议,各位要注意咯>


下载地址:功能&演示

转载:http://blog.csdn.net/cboy017/article/details/8455629

0 0
原创粉丝点击