使用 uni-upgrade-center 搭建 APP 更新系统 (升级中心 + 应用升级)
哦~我完成了 uni-app 手机 app 开发,如何让他更新呢~我来告诉你
![]()
说明
:分两块,一块是应用升级管理系统,一个是应用检测自己版本及更新
课程视频
uni-upgrade-center - Admin 搭建升级中心

创建 uni-admin 模板应用
我们之前已经讲了如何https://xie.infoq.cn/article/3597cdf0118290adf2004e0d0
之所以先创建 uni-admin 模板应用 是因为 uni-upgrade-center - Admin 是需要搭载在 uni-admin 上的
全流程如下
升级中心搭建全流程
新建项目

引入插件
插件市场引入 https://ext.dcloud.net.cn/plugin?id=4470

安装第三方依赖

上传云函数

初始化 db_init.json

添加以下页面路径
在 pages.json 中添加
效果为

在源码视图添加
在 manifest.json 添加
效果为

初始化 uni-admin 模板应用的 data
注意是 db_init.json

选中需要的数据表
如果提示没有菜单那几个数据有就创建 https://xie.infoq.cn/article/3597cdf0118290adf2004e0d0
运行到浏览器
注册管理员账号并且登陆
找到菜单设置

添加即可

到此完成搭建

应用升级搭建全流程
假设我们已经有了一个开发好的应用,我们想让他带有更新检测,自动检测,强制更新等等,如何做呢?来吧,小弟带你走下流程~
这里我们准备了一个应用,就是 uni-app 的默认模板

引入插件
https://ext.dcloud.net.cn/plugin?id=4542

创建数据表
在服务空间创建模板表 其它里面

上传部署云函数

添加页面路径
在 pages.json 添加以下代码
效果如下

引入主要的 js
这里我在 pages/index/index.vue 中引入

升级测试
发布后获取的为真实 app 版本以及 appid 此步为测试
升级中心新增应用
在我们之前搭建好的升级中心 添加应用


打包 1.0.0 版本
我们先搞一个 1.0.0 版本进行测试

云打包 (可不选择云打包,这里只是方便测试)


打包完成会生成一个 apk

发布 1.0.0 版本
在我们之前搭建好的升级中心点击版本管理

发布新版

我们是云打包 所以选择 原生 App 安装包

包地址可选择上传文件 ,上传完成会自动生成


我们此时可以用手机测试,或者模拟器
特别注意
调试的时候,获取的 appid 以及版本号不是你的,而是 Hbuilder 和 13.1.2

这个时候 我们可以本地修改
找到

修改 appid 以及版本号 appid 可以在 manifest.json 找到

这个时候 我们代表模拟器上版本是 1.0.0
打包发布 1.0.1
此时我们将 manifest.json 的版本名称以及版本号改为 1.0.1 101
再次云打包
获得一个新的 apk

在升级中心发布新版本

升级测试
在模拟器中测试 哈哈哈 船新版本~


版权声明: 本文为 InfoQ 作者【代码哈士奇】的原创文章。
原文链接:【http://xie.infoq.cn/article/8fdae3487d2d11158bd8159cb】。文章转载请联系作者。
评论