angularjs+ngCordova 手机录音
来源:互联网 发布:sql server入门到精通 编辑:程序博客网 时间:2024/05/01 07:51
1.安装录音插件:cordova plugin add https://github.com/emj365/cordova-plugin-audio-recorder-api
2.安装媒体插件,用来播放录音:cordova plugin add https://github.com/apache/cordova-plugin-media
3.添加FileTransfer插件:cordova plugin add cordova-plugin-file-transfer
.factory('huanxinIonic', function($ionicLoading,$cordovaVibration,$http,$rootScope,Storage,$ionicScrollDelegate,$timeout,$cordovaNativeAudio,$cordovaMedia) { return { //发送、接收消息,页面到最底部 viewScroll : function(){ var viewScroll = $ionicScrollDelegate.$getByHandle('messageDetailsScroll'); $timeout(function() { viewScroll.scrollBottom(); }, 0); }, //开始录音 startRecord : function(){ window.plugins.audioRecorderAPI.record(function(msg) { // 调用audioRecorderAPI成功 console.log('ok: ' + msg); }, function(msg) { // 调用audioRecorderAPI失败 console.log('ko: ' + msg); },60); // record 60 seconds }, //停止录音 stopRecord : function(data){ window.plugins.audioRecorderAPI.stop(function(file) { //录音停止后会返回录音文件的路径,file就是这个路径。 苹果上是.m4a格式的 var options = new FileUploadOptions(); options.fileKey = "file"; options.fileName = file.substr(file.lastIndexOf('/')+1); options.mimeType = "text/plain"; var ft = new FileTransfer(); ft.onprogress = function(progressEvent) { //上传中 console.log("上传中"); //console.log(progressEvent.loaded); }; ft.upload('file:///'+file, encodeURI("上传地址"), function(re){ var status = JSON.parse(re.response).success; if(status){ console.log("上传成功"); } }, function(e){ console.log(JSON.stringify(e)); }, options); //通过 FileTransfer 对象的 abort() 方法可以中断当前进行的上传、下载操作 //ft.abort(); }); }, //播放录音,音频文件url playRecord : function(file){ var media = new Media(file); media.play(); } } })
后台PHP代码
<?phpmove_uploaded_file($_FILES["file"]["tmp_name"], $_SERVER["DOCUMENT_ROOT"]."/uploadFiles/" . $_FILES["file"]["name"]);?>如果move_uploaded_file返回false,就可能是文件夹权限问题解决方案:chmod -R 777 某文件夹的绝对路径
你们看不懂的话可以看看以下2个链接。我也是看了这两个说明才搞出来的
ionic+angularjs+cordova 录音,播放录音:http://www.imooc.com/article/15436
Cordova - fileTransfer插件的使用详解(实现文件上传、下载):http://www.hangge.com/blog/cache/detail_1180.html
阅读全文
0 0
- angularjs+ngCordova 手机录音
- ngcordova $cordovaCapture.captureAudio录音失败,$cordovaMedia代替解决方案
- 监听手机录音
- MediaRecorder实现手机录音功能
- (综合)iPhone手机录音-amr
- Android手机通话录音实现
- Unity实现手机录音功能
- 摇一摇手机控制手机录音功能
- ionic 项目中使用ngCordova插件$cordovaCamera筛选手机图库图片显示出来并上传
- android之通过MediaRecorder进行手机录音
- android之通过MediaRecorder进行手机录音
- 小米手机的录音文件位置
- 获取手机录音和视频和图片
- 手机录音和降噪那些事
- 判断Android手机是否有录音权限
- 录音
- 录音
- 录音
- SAPI5同时(重叠)朗读TTS
- 如何用Notepad++运行Python脚本
- JAVA学习笔记09——Hibernate框架第三章
- 多线程(三)
- C语言 用if goto求n!
- angularjs+ngCordova 手机录音
- 有趣的位运算
- 反向代理、Nginx
- 基于Linux命令行KVM虚拟机的安装配置与基本使用
- 在jointquant利用macd在次新股实现自动交易
- C++实现静态顺序表的增删查改
- JDT Compilation Error deploying Contract Management Ear File (文档 ID 2088882.1)
- LaTex(PART I)第一个LaTex程序
- selenium技术学习-浏览器操作