首页 技术JS正文

融云搭建IM在安卓微信浏览器无法播放声音

薄洪涛 JS 2020-08-02 177 0

之前我们做了一个在线问诊的项目,基于融云和VUE搭建,在聊天的时候,接收到语音消息进行播放的时候,出了点问题,在安卓的微信浏览器上无法播放,在ios上却可以

然后我使用了微信开发者工具,打开了页面,发现报如下错误

TIM截图20200729202940.png


融云在接收语音消息,实际上是接收到的base64的串,然后使用融云自带的辅助插件进行播放

示例代码

然后这是官网给的文档,文档上说明是支持ios和android的微信的浏览器的

TIM截图20200802145149.png


然后我被折磨 了一下午,最后没办法提交了工单,以下是融云官方的回复

您好,感谢您使用融云服务。

融云声音库本身已经不维护了, 您的问题有可能是因为引用 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中加载的,代码不是最新的,只要替换就可以了




版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

评论