安卓qq去小程序版本号与服务器不符,QQ小程序 低版本兼容
小程序的功能不断的增加,但是旧版本的QQ客户端并不支持新功能,所以在使用这些新能力的时候需要做兼容。
开发者可以通过以下方式进行低版本的兼容:
1. 版本号比较
QQ客户端和小程序基础库的版本号风格为 Major.Minor.Patch(主版本号.次版本号.修订版本号)。
文档中会在组件,API等页面描述中带上各个功能所要求的最低基础库版本号。
开发者可以在小程序中通过调用 qq.getSystemInfo或者 qq.getSystemInfoSync 获取到当前小程序运行的基础库的版本号。通过版本号比较的方式进行运行低版本兼容逻辑。
版本号比较适用于所有情况。部分场景下也可以使用后面提到的方法完成
注意:不要直接使用字符串比较的方法进行版本号比较。
版本号比较可以参考以下代码:
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 = qq.getSystemInfoSync().SDKVersion
if (compareVersion(version, '1.1.0') >= 0) {
qq.openBluetoothAdapter()
} else {
// 如果希望用户在最新版本的客户端上体验您的小程序,可以这样子提示
qq.showModal({
title: '提示',
content: '当前QQ版本过低,无法使用该功能,请升级到最新QQ版本后重试。'
})
}
2. API 存在判断
对于新增的 API,可以通过判断该API是否存在来判断是否支持用户使用的基础库版本。例如:
if (qq.openBluetoothAdapter) {
qq.openBluetoothAdapter()
} else {
// 如果希望用户在最新版本的客户端上体验您的小程序,可以这样子提示
qq.showModal({
title: '提示',
content: '当前QQ版本过低,无法使用该功能,请升级到最新QQ版本后重试。'
})
}
3. qq.canIUse
除了直接通过版本号判断,也可以通过 qq.canIUse 来判断是否可以在该基础库版本下直接使用。例如:
API 参数或返回值
对于 API 的参数或者返回值有新增的参数,可以判断用以下代码判断。
qq.showModal({
success(res) {
if (qq.canIUse('showModal.cancel')) {
console.log(res.cancel)
}
}
})
组件
对于组件,新增的组件或属性在旧版本上不会被处理,不过也不会报错。如果特殊场景需要对旧版本做一些降级处理,可以这样子做。
Page({
data: {
canIUse: qq.canIUse('cover-view')
}
})
play
canIUse 的数据文件随基础库进行更新,新版本中的新功能可能出现遗漏的情况,建议开发者在使用时提前测试。
设置最低基础库版本
需要 8.0.0 及以上版本QQ客户端支持
为便于开发者解决低版本基础库无法兼容小程序的新功能的问题,开发者可设置小程序最低基础库版本要求。
开发者可以登录QQ小程序管理后台,进入「设置 - 基本设置 - 基础库最低版本设置」进行配置。在配置前,开发者可查看近 30 天内访问当前小程序的用户所使用的基础库版本占比,以帮助开发者了解当前用户使用的情况。
设置后,若用户基础库版本低于设置值,则无法正常打开小程序,并提示用户更新客户端版本。
安卓qq去小程序版本号与服务器不符,QQ小程序 低版本兼容相关推荐
- 微信小程序获取小程序版本号与服务器不符,微信小程序版本号比较
首先获取到当前版本号 : wx.getSystemInfo({ success (res) { console.log(res.model) //获取设备名:iPhone,Meizu...... co ...
- 安卓qq去小程序版本号与服务器不符,腾讯QQ竟然推出微信小程序版本 但是只能查看消息不能回复消息...
腾讯QQ用户量不敌微信且逐年下降已经是不争的事实,越来越多的用户把微信当做日常通讯最主要的沟通工具. 腾讯QQ这边倒是也想着通过运营活动恢复昔日的辉煌,不过想要再次超过微信的话看起来也是不太可能的事儿 ...
- 微信第一个支持小程序版本号与服务器不符,微信功能又又又更新!第一个就让人不淡定…...
原标题:微信功能又又又更新!第一个就让人不淡定- 微信又又又更新了 近日微信发布了7.0.5内测版本 朋友圈可以发30秒小视频了 本次7.0.5版本最大的亮点,就是朋友圈也可以发30秒小视频!发送方法 ...
- 微信第一个支持小程序版本号与服务器不符,解决微信小程序更新发布之后线上还是之前的老版本...
微信小程序每次发布更新后线上还是之前的老版本,要删除后重新打开才会显示新版本,特烦. 不知道是不是太久没去看文档了,发现 api 中增加了更新 wx.getUpdateManager(),于是立马来试 ...
- 微信小程序、微信低版本兼容
基础库低版本兼容 小程序的功能不断的增加,但是旧版本的微信客户端并不支持新功能,所以在使用这些新能力的时候需要做兼容. 1版本号比较 js_getuserinfo() {// 4 13// 2.10. ...
- 小程序怎样和服务器交互,微信小程序与 Django服务器 数据流 交互通信
Django服务器 解析小程序发送的json二进制字符串 https://blog.csdn.net/qq_25068917/article/details/81041048 http://www.c ...
- 微信小程序直播消耗服务器流量,微信小程序直播私域流量过程要用多久
满足品牌长线的规划,从追逐流量走向运营私域流量.不过,醉终能不能实现这个过程,或者这个私域流量过程要用多久,还得看微X信 的速度了.小程序直播上线很长一段时间,还是有很多用户不会用,小编写下此文,希望 ...
- 微信登录小程序授权显示服务器出错,微信小程序授权登录解决方案的代码实例(含未通过授权解决方案)...
本文实例为大家分享了微信小程序授权登录解决方案的具体代码,供大家参考,具体内容如下 getUserInfoF:function(){ var that = this; wx.getSetting({ ...
- 小森生活一直服务器维护,《小森生活》怎么处理断线黑屏的问题 连接不上服务器解决办法...
小森生活无可用网关服务器是最近出现的问题,该怎么解决这个不稳定造成的,一般是有多方面的问题,例如是服务器,例如自己的网络出现了问题,该怎么解决,看下面的教程.小森生活无可用网关服务器解决方法无可用网关 ...
最新文章
- 城市WiFi好看还应该好用
- winform combobox第12345行的数据_Python学习第109课--ndarray的创建和切分操作
- shell 中定义数组
- optee3.14中MMU页表查询的所需配置--深入解读
- Tensorflow get_variable和Varialbe的区别
- 利用js弹出select下拉选中option的内容
- alwayson高可用组_AlwaysOn可用性组–如何在集群实例和独立实例之间设置AG(第3部分)
- Endianness
- Windows系列服务器上配置JSP运行环境,以及网站上线
- JAVA商城项目(微服务框架)——第4天 乐优商城项目搭建
- 加入收藏 设为首页代码收藏本页的代码和收藏本站的代码设为首页代码
- 微信公众号开发(个人订阅号版)
- PHP写一个登录表单,并实现注册+登录功能
- 微信朋友圈附近推效果怎么样?
- 融云聊天--web SDK API
- 5款知乎高赞的超牛软件,你一定要知道
- uniapp设置router
- 北京大学计算机硕博连读5年,关于2018年北京大学硕博连读研究生选拔工作的通知-更新...
- 详解液晶面板制造全过程
- 计算机网络 直连网,计算机网络基础及局域网构建 静态路由和直连路由 静态路由和直连路由.doc...