uniapp app 安卓版本更新功能并监听下载进度

uniapp app 安卓版本更新功能并监听下载进度_第1张图片

1.判断手机系统

uni.getSystemInfo({
	success: (res) => {
		//检测当前平台,如果是安卓则启动安卓更新  
			if (res.platform == "android") {
				that.AndroidCheckUpdate();
		     }
	}
});

2.根据接口获取更新内容
 

AndroidCheckUpdate: function() {//检查是否更新
	var that = this;
	var currentVersion =  plus.runtime.version;//获取当前app版本号
	uni.request({
		//请求地址,设置为自己的服务器链接
		url: urldate.updataApp,
		//method: 'GET',  
		data: {
			version:currentVersion,
		},
		success: res => {
			if(res.data.status==1){
				if(res.data.data.isUpdate==1){
						var isCompel = res.data.data.isCompel;//1=强制更新,2=不强更新
						var downPath =  res.data.data.path;//文件路径
                        //通过webview打开下载链接
                        /* plus.runtime.openWeb(downPath );*/
					}
				
			}
		},
		fail: () => {},
		complete: () => {}
		});
},

3.下载app 并监听下载进度 

 

downApk:function () {
				var that = this;
				var url = that.downPath;
				const downloadTask = uni.downloadFile({
				    url: url, //仅为示例,并非真实的资源
				    success: (res) => {
				        if (res.statusCode === 200) {
							var path = res.tempFilePath;
				            plus.runtime.install(path, {}, function() {
				            	
				            }, function(e) {
				            	plus.nativeUI.closeWaiting();
				            	plus.nativeUI.alert("安装apk文件失败[" + e.code + "]:" + e.message);
				            });
				        }
				    }
				});
				downloadTask.onProgressUpdate((res) => {
					console.og('已下载' + res.progress +'%');
				});
			},

 

你可能感兴趣的:(uniapp)