【自问自答】在 IM 消息设计中,新旧版本,如何兼容?

我们是混合开发,如何新增加消息类型而不导致用户使用异常呢?

本文参与了SegmentFault 思否面试闯关挑战赛,欢迎正在阅读的你也加入。


回答:

依赖端的能力,可以让端提供一个支持能力的列表

比如 wx sdk 的 checkJsApi 的能力。

wx.checkJsApi({

jsApiList: ['chooseImage'], // 需要检测的JS接口列表,所有JS接口列表见附录2,

success: function(res) {

// 以键值对的形式返回,可用的api值true,不可用为false

// 如:{"checkResult":{"chooseImage":true},"errMsg":"checkJsApi:ok"}

}

});

当然,实现上可以有多种方案,比如说我们在升级客户端的时候,加入一下所有支持的消息类型。这样我们可以直接通过 url 拿到当然版本所支持的类型。

如果是不需要客户端的能力,可以直接使用。比如说显示一个表情什么的,我们直接开放就可以了。

当然,也可以使用客户端的版本号来判断。但是不建议写死在代码中,可以考虑配置化。apollo 之类的东西

本文参与了SegmentFault 思否面试闯关挑战赛,欢迎正在阅读的你也加入。

以上是 【自问自答】在 IM 消息设计中,新旧版本,如何兼容? 的全部内容, 来源链接: utcz.com/p/933871.html

回到顶部