uniapp写安卓端app自动更新下载apk安装

需要后端返回一个接口,接口里有最新版本号和下载地址,通过对比当前版本号和最新版本号来控制下载和安装最新版本

复制代码
//获取当前版本
AndroidCheckUpdate() {
	const systemInfo = uni.getSystemInfoSync();
	this.version = Number(systemInfo.appVersion.split('.').join(''))
	home.getVersionNew({}).then(res => {
		console.log(res,'res')
		var versions = Number(res.data.version.split('.').join(''))||Number(version)
		if(versions>this.version){
			uni.showModal({
				title:'版本提示',
				content:'检查到当前版本不是最新版本,是否更新为最新版本?',
				success:(e)=> {
					if(e.confirm){
						console.log(e)
						this.pullapk(res.data.fileUrl)
						//下载更新
					}
				}
			})
		}
	}).catch(e => {
		uni.showToast({
			title:e.msg,
			icon:'none'
		})
		return
	})
	},

pullapk(url){
	console.log(url)
	uni.showLoading({ title: "下载中" });
	uni.downloadFile({
		url: url, //下载地址
		success: (res) => {
			console.log(res, "下载成功");
			if (res.statusCode === 200) {
				console.log("下载成功");
				uni.hideLoading();
				uni.showToast({ title: "下载成功", icon: "success" });
				uni.saveFile({
					tempFilePath: res.tempFilePath,
					success: function (res) {
						uni.openDocument({
							filePath: res.savedFilePath,
							success: function (res) {
								console.log(res, "打开安装包");
							},
						});
					},
					fail: (err) => {
						console.log(err, "打开安装包-失败");
					},
				});
			}
		},fail(e) {
			uni.hideLoading();
			uni.showToast({ title: "下载失败,请检查网络", icon: "none" });
			console.log(e)
		},
	})
},
相关推荐
iOS阿玮13 分钟前
苹果悄悄上线网页版 App Store!官方出品调研竞品更方便~
uni-app·app·apple
Achieve前端实验室18 分钟前
深度解析 JavaScript 作用域与作用域链
前端·javascript·面试
2501_9159090638 分钟前
iOS App 测试工具全景指南,构建从开发、性能到系统级调试的多工具协同测试体系
android·测试工具·ios·小程序·uni-app·iphone·webview
钮钴禄·爱因斯晨44 分钟前
Python常见的文件操作
android·数据库·python
用户2018792831671 小时前
希腊字母"Έ"显示不全的奇妙冒险
android
Entropless1 小时前
Kotlin 可以预判你的预判?Kotlin 高级特性 之 Contracts
android·kotlin
xhxxx1 小时前
《深入理解 JavaScript 对象:属性命名、访问与遍历的那些细节》
前端·javascript
mm-q29152227291 小时前
云原生开发实战:从入门到精通 Vue3、Vite、Pinia、Axios 与 HTML、JavaScript、CSS 项目开发
javascript·云原生·html
JohnYan2 小时前
Bun技术评估 - 30 SSE支持
javascript·后端·bun
雨白2 小时前
深入理解 Flow 的终端操作符
android