uniapp App更新解决方法

uniapp App更新解决方法

最近项目碰到的app更新问题,安卓和iOS更新。

功能实现效果

安卓端:后台下载,自动弹出系统安装界面
iOS端:跳转 appStore app更新界面

1.获取用户手机平台

let platform = uni.getSystemInfoSync().platform;

2.获取用户当前app版本号和最新app版本号

let version = plus.runtime.version;	//当前app版本号
let onlineVersion = ''	//请求接口获取最新app版本号
this.$get({
	url: 'xxx',
}).then(res => {
	let onlineVersion = res.data.onlineVersion	
});

3.比较版本号是否为最新版本

//version 1.0.1  onlineVersion 1.0.2
version = version.split('.').join('');	//101
onlineVersion = onlineVersion.split('.').join('');	//102
//比较两个版本号大小

4.根据不同手机平台

if (platform == 'android') {
	var url = 'https://xxx/xxx.apk'; //安卓下载链接
	var dtask = plus.downloader.createDownload(url, {}, function(d, status) {
		// 下载完成
		if (status == 200) {
			//安卓安装
			plus.runtime.install(plus.io.convertLocalFileSystemURL(d.filename), {}, {}, function(error) {
				uni.showToast({
					title: '安装失败',
					mask: false,
					duration: 1500
				});
			});
		} else {
			uni.showToast({
				title: '更新失败',
				mask: false,
				duration: 1500
			});
		}
	});
	dtask.start(); //执行下载
	} else {
	// 跳转苹果商城
	let appleId = ''; //appid	iOS可在appstore分享给好友,复制获取下载链接
	plus.runtime.launchApplication(
		{
			action: `itms-apps://itunes.apple.com/cn/app/id${appleId}?mt=8`
		},
		function(e) {
			console.log(e.message);
		}
	);
}
  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值