bl.internal.updatePackage
基础库版本 >=
3.4.0
支持
业务资源包更新。
参数说明
Object object
属性 | 类型 | 默认值 | 必填 | 说明 | 版本 |
---|---|---|---|---|---|
success | function | 否 | 接口调用成功的回调函数 | ||
fail | function | 否 | 接口调用失败的回调函数 |
success参数说明
Object res
属性 | 类型 | 说明 | 版本 |
---|---|---|---|
downloadedVersion | string | 最新版本号 | |
currentVersion | string | 当前用户使用的版本号 |
示例代码
bl.internal.updatePackage({
success (res) {
// compareVersion函数由业务方自行定义
if (compareVersion(res.downloadedVersion, res.currentVersion) > 0) {
// 重启小程序以使用最新的资源包
bl.internal.reboot();
}
}
});
Tips
版本号比较可以参考以下代码:
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