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();
								}
							);
						}
					}
				});
			}
		}
	});
}

  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM