融云搭建IM在安卓微信浏览器无法播放声音
之前我们做了一个在线问诊的项目,基于融云和VUE搭建,在聊天的时候,接收到语音消息进行播放的时候,出了点问题,在安卓的微信浏览器上无法播放,在ios上却可以
然后我使用了微信开发者工具,打开了页面,发现报如下错误
融云在接收语音消息,实际上是接收到的base64的串,然后使用融云自带的辅助插件进行播放
然后这是官网给的文档,文档上说明是支持ios和android的微信的浏览器的
然后我被折磨 了一下午,最后没办法提交了工单,以下是融云官方的回复
您好,感谢您使用融云服务。
融云声音库本身已经不维护了, 您的问题有可能是因为引用 cdn 文件. cdn 文件会有部分手机浏览器播放失败问题. 您更换下 github 的声音库
https://github.com/rongcloud/websdk-demo/blob/master/lib/RongIMVoice-2.2.6.js
另外, 根据您的描述, 您使用的应该是 VoiceMessage(旧语音消息)
旧语音消息 content 为 base64 amr 语音. 质量较差, 时长限制严重, 占用消息体大, 传输也会更慢
建议您使用高清语音消息, 高清语音使用 aac 格式语音, 直接传递上传后的远程地址. Web 可直接使用 audio 标签播放
注: 高清语音移动端需版本为 2.9.19 以上
文档可见: https://docs.rongcloud.cn/v3/views/im/ui/guide/private/conversation/msgsend/ios.html?ver=4#sendvoice
由于我们之前为了兼容使用的旧版的语音消息,所以没办法在短时间内升级融云SDK,所以我尝试了第一种方案,从github上找到了新的RongIMVoice-2.2.6.js,替换远程连接
然后发现可以了!!!!!!!!
主要原因是融云文档中提供的 js 可能是从cdn中加载的,代码不是最新的,只要替换就可以了