小程序基础库与小程序客户端升级

微信小程序会不断的发布新的功能,包括框架、组件和API。例如在基础库1.60以后添加了新的录音管理API。

新旧版本的兼容

更新小程序客户端的时候,需要考虑客户端向下兼容的问题。通常处理的办法有:(1)新旧版本都支持,(2)只支持高版本的新功能,并对低版本给出升级提示。

1. 维持两个不同的版本

也就是说或如果客户端的基础库较低则使用旧的代码,如果客户端升级较新的版本则使用新的代码。

if (version > ‘1.60’) {
  // use new code
}
else {
  // use old code
}

Version为小程序登录之后得到的客户端版本号。

微信官方提供了几种不同的方式来处理兼容问题: https://mp.weixin.qq.com/debug/wxadoc/dev/framework/compatibility.html
类似上面的代码可以写成:

if (wx.NewAPI) {
    wx.NewAPI()
}
else {
    wx.OldAPI()
}

2. 只支持新版本功能

有的时候(下面会讲什么时候)我们可能考虑只支持新版本,但是并不是不处理低版本,而是给用户一个升级版本的提示 ,否则微信版本低的用户不能使用时,不能知道原因,正式的产品应该避免这种情况。官方给出的代码demo是这样的。

if (wx.NewAPI) {
    wx.NewAPI()
}
else {
    wx.showModal({
        title: '提示',
        content: '当前微信版本过低,无法使用该功能,请升级到最新微信版本后重试。'
    })
}

如何选择兼容方式?

在升级 小程序的时候,怎么处理兼容呢?也就是说,什么时候可以上新功能,什么时候考虑不支持旧的功能呢?

当新的基础库功能发布的时候,就可以考虑使用新功能了。如果基础库已经覆盖了几乎所有用户,那么可以直接使用新的API功能,无需考虑兼容的问题,如果还有比较多的用户名诶有升级,那么需要写两套code来处理逻辑。
查看基础库的用户分布情况,可以查看小程序官网:https://mp.weixin.qq.com/debug/wxadoc/dev/framework/client-lib.html

 

By Code问答

发表评论

电子邮件地址不会被公开。 必填项已用*标注

67 − = 60