玖叶教程网

前端编程开发入门

uni-app实现热更新(uniapp热更新安装失败)

第一步:在项目App.vue文件中增加代码,放在onLaunch事件中(假设最新版本为“1.2.8”):

<script>

import conf from "@/conf/conf.js"

export default {

onLaunch: function() {

console.log("开始了*****************999999****************************",conf.server_version);

let osname=uni.getSystemInfoSync().osName;

console.log(osname);

console.log(conf.server_version);

if(osname=='android'|| osname=='ios'){

console.log("====手机端===00000======9999999999999999999========>",conf.server_version!="1.2.8");

if(conf.server_version!="1.2.8"){

console.log("同步代码...00000000..");

uni.showModal({

title:"更新",

content:'99999999更新嘛?',

success:function(res){

console.log("====>**********"+res.confirm);

if(res.confirm){

let downloadTask=uni.downloadFile({

url:"http://******.com/app.wgt",

success: (downloadResult) => {

plus.runtime.install(downloadResult.tempFilePath,{force:true},function(){

plus.runtime.restart();

});

}

});

downloadTask.onProgressUpdate((res) => {

console.log('下载进度' + res.progress);

console.log('已经下载的数据长度' + res.totalBytesWritten);

console.log('预期需要下载的数据总长度' + res.totalBytesExpectedToWrite);

});


}else{

console.log("用户取消了....")

}

}

})

console.log("====>appid==99999999=>");

}else{

console.log("====>最新版本不用更新=>");

}

}else{

console.log("不是App本版");

}

},

onShow: function() {

console.log('App Show')

console.log("99999999999999999999999====>")

},

onHide: function() {

console.log('App Hide')

}

}

</script>

在项目中增加一个配置文件conf.js


这个文件代码如下:

export default{

server_version:"1.2.5"

}

第二步:打包最新的1.2.8个wgt包

修改conf.js文件如下:

export default{

server_version:"1.2.8"

}

打包wgt包,将获得wgt放到第一步代码(uni.downloadFile)路径中,这样热更新就完成。

发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言