• uni-app 实现APP的版本更新


    在index.vue 中的onload方法里面或者app.vue中的onLaunch中添加如下部分:

    update() {
    	var _this = this;
    	uni.request({
    	url: `${this.$store.state.apiBaseUrl}/users/versions`,  //请求接口
    	method: 'POST',
    	success: result => {
    		if (result.data.code == 1) { 
    			plus.runtime.getProperty(plus.runtime.appid, function(inf) {
    				if(inf.version != result.data.data.versions){
    					uni.showModal({
    						title: "发现新版本",
    						content: "确认下载更新",
    						success: (res) => {
    							if (res.confirm == true) {//当用户确定更新,执行更新
    								_this.doUpData();
    							} 
    						}
    					})
    				}
    			});
    		}
    	},
    	})
    },
    
    doUpData() {
    	uni.showLoading({
    		title: '更新中……'
    	})
    	uni.downloadFile({//执行下载
    		url: '***', //下载地址
    		success: downloadResult => {//下载成功
    			uni.hideLoading();
    			if (downloadResult.statusCode == 200) {
    				uni.showModal({
    					title: '',
    					content: '更新成功,确定现在重启吗?',
    					confirmText: '重启',
    					confirmColor: '#EE8F57',
    					success: function(res) {
    						if (res.confirm == true) {
    							plus.runtime.install(//安装
    								downloadResult.tempFilePath, {
    									force: true
    								},
    								function(res) {
    									utils.showToast('更新成功,重启中');
    									plus.runtime.restart();
    								}
    							);
    						}
    					}
    				});
    			}
    		}
    	});
    }
    

      

  • 相关阅读:
    内部排序一
    安全的文件访问方式
    Json序列化
    对进度条的通用封装实现
    关于'//'解答
    jquery中美元符号($)命名冲突
    linux 文件属性与权限
    【层次查询】Hierarchical Queries之亲兄弟间的排序(ORDER SIBLINGS BY)
    How to create a freehand tool
    C# 获取COM对象 ProgId ClsId
  • 原文地址:https://www.cnblogs.com/yeziyou/p/13391349.html
Copyright © 2020-2023  润新知