QNRTN Web SDK 老客户升级指南
您可能已经阅读过我们的 模式选择 这一章了,因为底层重构支持单用户多流的原因,大部分上层 API 我们做不向下兼容的改动。所以直接升级替换将会导致您的服务不可用,您需要选择一个合适的时机按照下面的流程升级您的服务。
对于旧版本(小于 2.0.0),我们会定期修复上报的问题,但是新的功能只会出现在新的版本上。
如果您认为旧的版本不能满足了您的使用需求,或者想升级到新版以便能够获取最新的功能,下面将会介绍升级的方法。
升级之前
在升级之前,请一定要阅读完 模式选择 里关于不同模式优劣的介绍。其中 Stream
模式的 API 绝大多数会兼容老版本,所以升级起来较为简单。Track
模式的 API 和使用思路完全和老版本不同,如果您想让您的应用支持 Track 模式,建议重新跟着文档走完 Track 连麦的流程根据具体情况重构您的代码。
如果您选择 Stream
模式,更新完新版的 sdk 后,参考下文的改动列表修改您相应的代码。
- QNRTCSession 更改为 StreamModeSession
- deviceManager 的采集行为更变
在 2.0.0
后,我们重构了这个模块,deviceManager 有 3 个主要的改变:
每次调用
getLocalStream
返回的Stream
对象各自独立,之前的版本会将上一次返回的Stream
销毁。取消了
changeDevice
和自动切换采集设备的功能,只提供指定采集设备采集的功能, 详见getLocalStream。整个 deviceManager 和发布订阅流程完全独立,取消发布和退出房间都不会销毁采集的媒体对象,关于这一点详见 销毁媒体对象
unpublish 和 unsubscribe 现在是异步方法
disconnect
事件参数改变,详见这里
如果您选择 Track
模式,因为您已经有了老版本开发的基础,建议您仔细阅读这篇 Track 模式快速开始,感受以 Track 为单位操作连麦和之前的版本有什么区别。再根据相应的功能介绍和 API 修改您的代码。