UNI-APP APP升级(热更新)

626 阅读2分钟

需求

我们在开发APP时经常会遇到APP需要升级更新的操作,很多情况下我们都是自己在企业内部搭建一个APP版本管理平台,然后将新的包上传到平台,APP端通过版本判断来决定是否更新包。

上面这种操作比较复杂的就是需要自己搭建项目平台,并且需要弄一个服务器来放置更新的APP,总的来说需要投入的工作量很大,在一些小公司或者个人开发时显得尤为复杂,此时我们就可以用的UNI-APP官方自带的热更新功能。

介绍

image.png

先奉上官方文档:uniapp.dcloud.net.cn/uniCloud/up…

总的来说就是配置简单,完整的后台管理系统,官方提供免费的云服务空间,很适合没有足够资源时使用(比如个人用户)。

使用

构建uni-upgrade-center Admin管理后台

首先构建一个Admin后台管理系统,这里可是使用官方模板,在新建项目的时候就可以选择如下图:

image.png

构建时会让你选择你的云服务空间,如果有直接关联即可,如果没有,那就需要你去申请一个云服务空间,建议使用阿里云,毕竟可以白嫖

运行

此时你就可以运行你的项目了如下图:
中间有些操作已省略,直接跟着运行出来的页面指导点击即可

image.png

App端引入插件

  • 关联云服务空间 APP也需要关联云服务空间,如果没有,具体操作如下图:

image.png

这里关联的云服务空间要与uni-admin关联的云服务相同,这样就可以调用对应的云函数。

  • APP端引入APP升级插件 只需到官方插件中心下载即可:如图

image.png

具体使用也可以看官方文档: ext.dcloud.net.cn/plugin?id=5…

  • APP代码编写,检查更新

image.png

效果

image.png

后台还可以配置升级的方式:

image.png

补充:热更包wgt 与 整包

wgt热更包相当于增量更新,只升级本次修改部分,一般只有几M大小,但仅限一些逻辑代码和功能的修改,但是涉及静态资源修改,三方插件修改以及HbuilderX版本更新都需要整包更新。
这里倒想问大家一个问题?什么情况下用wgt 什么情况必须整包更新? 除开上面讲的

总结:

uni提供的升级方式能让我们简单快速的搭建一个APP升级系统,具有很大的便利性。不过在使用中还是需要注意一些问题如云服务空间是否关联正确,热更新包与整包更新的区别。