1***@qq.com
1***@qq.com
  • 发布:2018-06-12 10:51
  • 更新:2018-10-18 17:40
  • 阅读:2882

音频文件与base64转化 制作客服功能

分类:HTML5+

本人想做一个客服功能;实现在线的语音消息功能(图片和文本啥的都没问题了)。。。

问题是这样的;当我在ios下真机运行的时候都是ok的,但是安卓上有一个奇怪的bug;

就是假如是先收到语音消息的话,点击这个语音消息是可以正常播放,
自己录音发送消息也可以正常播放;但是要是打开页面自己先发语音消息就会无效,收到发来的信息也不能播放;

*美丽的分割线*****

早上行问的问题,经过一天的折腾,发现好像是plus.io.resolveLocalFileSystemURL这个函数在安卓底下的时候有点小bug,具体是啥 我就不知道了,总之上午的问题就是这个导致的;

修改如下:
语音文件转成base64:

if(mui.os.android){
// alert(1)
plus.io.requestFileSystem(plus.io.PRIVATE_DOC, function(fs) {
fs.root.getFile(path, {
create: true
}, function(entry) {
entry.file(function(file) {

                            var reader = new plus.io.FileReader();  
                            reader.readAsDataURL(file);  
                            reader.onloadend = function(e) {  

                                data = e.target.result  
                                callback(data)  
                            };  

                        }, function(e) {  
                            console.log(e)  
                        })  
                    })  
                })  
            } else if(mui.os.ios) {  

// alert(2)
plus.io.resolveLocalFileSystemURL(path, function(entry) {
entry.file(function(file) {
var reader = new plus.io.FileReader();
reader.onloadend = function(e) {
// console.log(e.target.result);
data = e.target.result
callback(data)
};
reader.readAsDataURL(file);
}, function(e) {
mui.toast("读写出现异常: " + e.message);
})
})

            }  

ok搞定!!;
自贴自结 哈哈哈

2018-06-12 10:51 负责人:无 分享
已邀请:
8***@qq.com

8***@qq.com

是传给后台的BASE64吗,还有后台是把BASE64存成了文件,还是转成了录音文件呢?

该问题目前已经被锁定, 无法添加新回复