uniapp自动升级

一、创建云服务空间(https://unicloud.dcloud.net.cn

云空间用于关联需要版本控制升级的项目,如果已拥有云空间则省略此步骤。

二、搭建 uni升级中心 - 后台管理系统(升级中心 uni-upgrade-center - Admin)

uni-admin是一套基于uniCloud的开源应用管理端系统。

本插件是uni-admin系统的扩展插件,为开发者的admin系统添加功能。

需先确保本机有uni-admin项目,然后将此插件导入到uni-admin项目下。

如本机没有uni-admin项目,需要先在HBuilderX中新建项目 -> uni-app项目 -> 选择uni-admin模板。

如本机的uni-admin项目版本过老,可能无法使用新插件,需及时升级本机的uni-admin项目。

uni-admin 搭建过程和使用详见 https://ext.dcloud.net.cn/plugin?id=4470

三、需要打包的项目引入 uni升级中心 - 客户端检查更新插件(升级中心 uni-upgrade-center - App)

uni-upgrade-center-app引入过程详见https://ext.dcloud.net.cn/plugin?id=4542

四、App打包

1、两种打包形式,原生apk包和热更新wgt包

通常选择使用云端证书进行打包

此时为需要打包的app生成证书

2、我们是通过https://www.dcloud.io/ 的开发者后台

登录账号需要和app绑定的云空间保持一致

3、登录成功后,可以到我的应用里面创建应用

创建完成后进入到具体应用中,生成证书(appid是唯一的需要保持一致)

五、app发布和版本控制

1、运行步骤二搭建的uni-admin项目 登录成功后进入到uni-admin

若未发现升级中心模块则需要 添加菜单

Vue2

运行起来uniCloud admin,菜单管理模块会自动读取/uni_modules/uni-upgrade-center/menu.json文件中的菜单配置,生成【待添加菜单】,选中升级中心,点击添加选中的菜单即可

Vue3

将/uni_modules/uni-upgrade-center/menu.json 拷贝至 uniCloud/database/db_init.json 中的 opendb-admin-menus 节点下,并右键初始化数据库即可。

应用列表

点击菜单 应用管理,这里展示你所添加的 App,点击右上角 新增 可以新增一个 App

将App的信息都填写完善后,你可以在列表的操作列进行修改应用信息或者删除该应用。

注意:

删除应用会把该应用的所有版本记录同时删除

版本管理

在版本管理list的右上角点击发布新版,可以发布原生App安装包和wgt资源包。在左上角点击下拉列表,可以切换展示应用。

发布原生App安装包,在上传安装包界面填写此次发版信息

包地址

可以选择手动上传一个文件到 云存储,会自动将地址填入该项

也可以手动填写一个地址,就可以不用再上传文件

如果是发布苹果版本,包地址则为 应用在AppStore的链接

强制更新

如果使用强制更新,App端接收到该字段后,App升级弹出框不可取消

上线发行

可设置当前包是否上线发行,只有已上线才会进行更新检测

同时只可有一个线上发行版,线上发行不可更设为下线。未上线可以设为上线发行并自动替换当前线上发行

版修改当前包为上线发行,自动替换当前线上发行版

注意:版本号请填写以.分隔字符串,例如:0.0.1

发布wgt资源包

大部分配置与发布 原生App安装包 一致

原生App最低版本

上次使用新Api或打包新模块的App版本

如果此次打包wgt使用了新的api或者打包了新的模块,则在发布 wgt资源包 的时候,将此版本更新为本次版本

如果已有正式版wgt资源包,则本次新增会自动带出

静默更新

App升级时会在后台下载wgt包并自行安装。新功能在下次启动App时生效

静默更新后不重启应用,可能会导致正在访问的应用的页面数据错乱,请谨慎使用!

发布完成页面

注意:

  1. pages/system/upgradecenter/version/add.vue中有版本对比函数(compare)。
    使用多段式版本格式(如:"3.0.0.0.0.1.0.1", "3.0.0.0.0.1")(比较版本的方式大致是版本号去除. 后拼接成数字比较大小,具体可以去看下载插件中的代码)。如果不满足对比规则,请自行修改。
    本地的uniCloudAdmin 和待发行项目都必须关联到云空间
  2. 在维护老项目的时候发现有些系统内的升级插件是老的,老版本的不需要后台管理系统(升级中心 uni-upgrade-center - Admin),新版本的要。具体看官方的内容。
相关推荐
程序员爱技术1 小时前
Vue 2 + JavaScript + vue-count-to 集成案例
前端·javascript·vue.js
并不会2 小时前
常见 CSS 选择器用法
前端·css·学习·html·前端开发·css选择器
衣乌安、2 小时前
【CSS】居中样式
前端·css·css3
兔老大的胡萝卜2 小时前
ppk谈JavaScript,悟透JavaScript,精通CSS高级Web,JavaScript DOM编程艺术,高性能JavaScript pdf
前端·javascript
低代码布道师2 小时前
CSS的三个重点
前端·css
耶啵奶膘4 小时前
uniapp-是否删除
linux·前端·uni-app
王哈哈^_^5 小时前
【数据集】【YOLO】【目标检测】交通事故识别数据集 8939 张,YOLO道路事故目标检测实战训练教程!
前端·人工智能·深度学习·yolo·目标检测·计算机视觉·pyqt
cs_dn_Jie6 小时前
钉钉 H5 微应用 手机端调试
前端·javascript·vue.js·vue·钉钉
开心工作室_kaic6 小时前
ssm068海鲜自助餐厅系统+vue(论文+源码)_kaic
前端·javascript·vue.js
有梦想的刺儿7 小时前
webWorker基本用法
前端·javascript·vue.js