APP检查更新过程 简陋版

 1、总体流程

APP开发完成后将打包的apk文件以及当前APP版本号提交并且保存至后台的版本控制页面(需要新增),此时最新版本已经存储在我们的后台,当用户登录APP时,调用接口获取最新版本的信息(包括:版本号、版本发布时间、安装包下载链接等信息),检查当前版本号与最新版本号是否相符,如果检查到用户当前版本不是最新版本将弹出下载提示框,此时通过我们之前获取的下载链接进行下载并且安装。

后端需要提供 版本列表接口(后台管理系统查看历代版本)、版本发布接口(提交版本编辑各类版本信息)、版本检查接口(移动端调取获取最新版本信息进行对比)

前端需要添加 PC端版本管理页面(增删改查)、移动端编辑弹出框对用户进行提示,调用版本详情接口进行对比并且进行下载

图片示例:

2、前端部分

a.参考文档:
使用uniapp开发APP实现版本更新并安装_uniapp 版本更新_WeiflR10的博客-CSDN博客
uniapp实现app自动检测更新_uniapp检测更新_浮桥的博客-CSDN博客
uniapp之app自动更新_uniapp app更新_赵啸林的博客-CSDN博客
【Uniapp】Uniapp 实现 App 版本自动升级_51CTO博客_uniapp更新版本
b.工作流程:

1、封装更新版本提示框

2、用户登录时调用版本检查接口获取最新版本信息(此接口由后端提供,用于获取版本信息,例如:版本号、

版本下载链接、版本更新内容)

3、调用官方提供API获取当前使用版本的版本号(以下为多个本地版本获取方法未经测试)

// 获取本地版本信息
plus.runtime.getProperty(plus.runtime.appid, (info) => {
  uni.setStorageSync('version', info.version)
})

// 每一个应用都有自己的版本号,为了准确的下载更新包,首先需要获取当前应用的版本信息。通过使用uni-app插件App,可以获得应用当前的版本号。
const App = uni.requireNativePlugin('App');  
let version = '';
App.getVersionName(function (data) {  
  version = data.versionName;  
})

4、对比两个版本号,查看当前版本是否为最新版本,如果为最新版本用户即可继续进行操作,如果检测结果不是最新版本我们弹出提示框提示用户可以进行更新,当用户点击更新按钮,调用官方的下载接口,将我们获取版本信息中下载链接填入接口中,下载成功之后安装重启

doUpData(Url) {
	uni.showLoading({
		title: '更新中……'
	});
	const downloadTask = uni.downloadFile({
		//执行下载
		url: Url, //下载地址
		timeout: 1000 * 30, //30秒超时时间
		success: downloadResult => {
			//下载成功
			console.log(downloadResult);
			this.showdownLine = false;
			uni.hideLoading();
			if (downloadResult.statusCode == 200) {
				plus.runtime.install(
					//安装软件
					downloadResult.tempFilePath,
					{
						force: true
					},
					function(res) {
						plus.runtime.restart();
					}
				);
			}
		},
		fail: err => {
			uni.hideLoading();
			this.showdownLine = false;
			this.$u.toast(err.errMsg);
			console.log(err);
		},
		complete: com => {
			console.log(com);
		}
	});
}

5、后台管理系统添加APP版本管理页面(用于展示应用名称、发布平台、更新内容、版本号、上传的APK文件以及APK文件的下载链接)

6、新增,编辑 APP版本 上传APK文件 编辑应用名称,发布平台,更新内容等信息

3、后端部分

a.参考文档:
服务器上传apk包,生成访问链接_apk链接_cfy_wyl的博客-CSDN博客

b.工作流程:

1、展示APP版本列表(增删改查)

2、保存用户编辑的版本信息 --- 增

3、提供上传文件接口,用于上传APK文件,返回值为:

{
  code: 0 ,
  url:'https://xxx.com/xxx.apk',
  msg:"success"
}

 4、移动端调用检查版本接口返回最新版本信息,返回值为:

{
  code: 0 ,
  data:{
    name:'xxxAPP',
    version:'1.1.1',
    platform:'Android',
    content:'修改bug',
    updateTime:'',
    downloadPath:'https://xxx.com/xxx.apk'
    ...
  },
  msg:"success"
}

  • 26
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值