IMLib 4.X 升级到 5.X
本文描述 IMLib SDK 从 4.X 到 5.X 版本的升级步骤。
升级说明
5.x 相较于 4.x 版本,对即时通讯基础组件 IMLib 进行了拆分。IMLib 分成了 6 个模块:
注意
LibCore(基础核心功能),chatroom(聊天室),customservice(客服),
discussion(讨论组),location(实时位置),publicserivce(公众号)
5.x 版本会提供两种形式的 SDK,’完整包‘和’拆分包‘
-
如果使用’完整包‘,直接正常升级就行,从 4.x 能完美升级兼容
-
如果使用'拆分包',首先必需依赖 LibCore 模块,其它模块根据业务需求选择集成。比如您使用到聊天室的功能的话,除了依赖 LibCore 模块,还需要让项目依赖 chatroom 模块,依次类推使用到哪个模块就依赖相关模块
常见问题
1.为什么一部分无法重连错误码的处理逻辑并没有在示例代码中写明?
都是开发阶段的问题,不需要代码兼容处理。
31008
:Appkey 被封禁
当发生这个问题的时候,您可以自行在控制台查看您的 appkey 使用状态,大多情况是 appkey 被自行删除或者欠费。
33001
:SDK 没有初始化
这个错误只会发生在开发阶段,只要您保证先 init 后 connect 就不会有这个问题。
33003
:开发者接口调用时传入的参数错误
这个错误只会发生在开发阶段,很可能是传入的 token 为空,只要保证 connect 传入正确合法的 token 就不会有这个问题。
33002
:数据库错误
这个问题只会发生在开发阶段,很可能是您的用户 id 体系和我们 SDK 的不一致,一般该情况很少发生。
2.旧版本连接过程中一旦出现中间错误码就会立即触发 error 回调,新版本中间错误码不会触发 error 回调了,可能会等很长时间没有任何回调,这要怎么处理?
以下的建议,择一选取即可。
建议1.
用户第一次登录,设置 timeLimit 为有效值,网络极差情况下超时回调 error。
用户后续登录,调用没有 timeLimit 的接口,SDK 就会保持旧版本的自动重连。
建议2.
设置 SDK 的连接状态监听,APP 自行做超时的记录,如果超时了,APP 可以自动断开连接再调用 connect 进行连接。