微信客户端不支持新功能,开发者需要做兼容
发表时间:2023-09-04 09:09:09
文章来源:炫佑科技
浏览次数:180
菏泽炫佑科技 菏泽炫佑小程序开发 菏泽炫佑app制作 炫佑科技
微信客户端不支持新功能,开发者需要做兼容
兼容的
小程序的功能在不断增加,但老版本的微信客户端并不支持新功能,所以在使用这些新功能时需要做好兼容性。
开发可以通过以下方式实现低版本的兼容:
1.版本号对比
微信客户端和小程序基础库的版本号样式为Major.Minor.Patch(主版本号.次版本号.修订号)。
文档中会包含组件、API 等页面描述中每个功能所需的*低基础库版本号。
开发可以通过调用 wx.get() 来获取小程序中当前运行的基础小程序的版本号。 通过比较版本号来运行低版本兼容逻辑。
版本号比较适用于所有情况。 在某些场景下,也可以使用后面提到的方法。
“2.3.0”是错误的
版本号对比可以参考以下代码:
function compareVersion(v1, v2) {
v1 = v1.split('.')
v2 = v2.split('.')
const len = Math.max(v1.length, v2.length)
while (v1.length < len) {
v1.push('0')
}
while (v2.length < len) {
v2.push('0')
}
for (let i = 0; i < len; i++) {
const num1 = parseInt(v1[i])
const num2 = parseInt(v2[i])
if (num1 > num2) {
return 1
} else if (num1 < num2) {
return -1
}
}
return 0
}
compareVersion('1.11.0', '1.9.9') // 1
const version = wx.getAppBaseInfo().SDKVersion
if (compareVersion(version, '1.1.0') >= 0) {
wx.openBluetoothAdapter()
} else {
// 如果希望用户在*新版本的客户端上体验您的小程序,可以这样子提示
wx.showModal({
title: '提示',
content: '当前微信版本过低,无法使用该功能,请升级到*新微信版本后重试。'
})
}
2. API存在判断
对于新的API,可以通过判断该API是否存在来判断是否支持用户使用的基础库版本。 例如:
if (wx.openBluetoothAdapter) {
wx.openBluetoothAdapter()
} else {
// 如果希望用户在*新版本的客户端上体验您的小程序,可以这样子提示
wx.showModal({
title: '提示',
content: '当前微信版本过低,无法使用该功能,请升级到*新微信版本后重试。'
})
}
3.wx。
除了直接通过版本号判断之外微信客户端不支持新功能,开发者需要做兼容,还可以通过wx. 例如:
API参数或返回值
如果API参数或者返回值有新的参数,可以使用下面的代码来判断。
wx.showModal({
success: function(res) {
if (wx.canIUse('showModal.success.cancel')) {
console.log(res.cancel)
}
}
})
成分
对于组件来说,新添加的组件或属性在旧版本上不会被处理,但不会报错。 如果特殊场景需要对旧版本进行一些降级,可以这样做。
Page({
data: {
canIUse: wx.canIUse('cover-view')
}
})
<video controls="{{!canIUse}}">
<cover-view wx:if="{{canIUse}}">playcover-view>
video>
数据库的数据文件随基础库更新微信小程序用开发语言,新版本中的新功能可能会缺失。 建议开发在使用时提前进行测试。
设置*低基础库版本
需要iOS 6.5.8 / 6.5.7及以上微信客户端支持
为了方便开发解决低版本基础库不兼容小程序新功能的问题,开发可以小程序设置*低基础库版本要求。
开发可以登录小程序管理后台,进入“设置-基础设置-基础库*低版本设置”进行配置。 配置前,开发可以查看近30天内访问过当前小程序的用户使用基础库版本的比例,帮助开发了解当前用户的使用情况。
设置后,如果用户基础库版本低于设置值,小程序无法正常打开,会提示用户更新客户端版本。