checkVersionToLoadUpdate1(server_version,curr_version){
let that = this
if(server_version != curr_version){
uni.showModal({
title: "版本更新",
content: that.versiondesc,
confirmText:'立即更新',
mask: true,
cancelText: "取消",
success: function (res) {
if (res.confirm) {
uni.showToast({
icon:"none",
mask: true,
title: '有新的版本发布,程序已启动自动更新。新版本下载完成后将自动弹出安装程序',
duration: 30000,
});
//设置 最新版本apk的下载链接
var downloadApkUrl = that.loadUrl;
console.log(downloadApkUrl)
var dtask = plus.downloader.createDownload( downloadApkUrl, {}, function ( d, status ) {
console.log(d)
console.log(status)
// 下载完成
if ( status == 200 ) {
plus.runtime.install(plus.io.convertLocalFileSystemURL(d.filename),{},function(e){
// plus.nativeUI.closeWaiting();
console.log(e)
console.log("安装文件成功!");
uni.showToast({
title: '安装文件成功!',
duration: 1500
});
},function(error){
console.log(error)
uni.showToast({
title: '安装失败!',
duration: 1500
});
})
} else {
uni.showToast({
title: '更新失败!',
duration: 1500
});
}
});
//监听下载
dtask.addEventListener("statechanged", function (download, status) {
switch (download.state) {
case 2:
// plus.nativeUI.showWaiting("正在下载...");
break;
case 3:
//进度条百分比 totalSize为总量,baifen为当前下载的百分比
if(that.totalSize==0){
that.totalSize=parseInt(download.totalSize);
}
if(parseInt(download.downloadedSize/that.totalSize100)!=that.baifen){
that.baifen=parseInt(download.downloadedSize/that.totalSize100);
console.log(that.baifen)
plus.nativeUI.showWaiting("下载进度:"+that.baifen + "%");
}
break;
case 4:
uni.showToast({
title: '下载完成!',
duration: 1500
});
plus.nativeUI.closeWaiting();
break;
}
});
dtask.start();
}
}
});
}
}
这个是升级代码函数,不知道是什么问题,求解答
8***@qq.com
- 发布:2020-02-20 20:47
- 更新:2020-03-10 18:40
- 阅读:797
1 个回复
_从中二毕业
我这边也出现了在 uni.Modal 的 success 函数内使用 uni.showToast 出现卡住的情况。