1、更新 manifest.json 中的版本号。如果上一个版本的版本号是1.0.0,这里打升级包的时候就可以是1.0.1,反正要不前面的大,大家也可看到服务端接口实现了,就是通过版本号来判断的。
2、菜单->发行->原生App-制作移动App资源升级包
3、等待控制台生成升级包的输出位置
4、将升级包上传到服务器,接口实现并返回:wgtUrl=刚刚打的升级包
这样,我们的app就拥有了,增量更新功能。每次如果是小量更新,就可以通过wgt包,来实现增量更新。
下面来看看,Uni App增量更新时,需要注意哪些问题?
Uni-App 增量更新功能需要注意些什么
1、SDK 部分有调整,比如新增了 Maps 模块等,不可通过此方式升级,必须通过整包的方式升级。
2、如果是老的非自定义组件编译模式,之前没有 nvue 文件,但更新中新增了 nvue 文件,不能使用此方式。因为非自定义组件编译模式如果没有 nvue 文件是不会打包weex引擎进去的,原生引擎无法动态添加。自定义组件模式默认就含着weex引擎,不管工程下有没有nvue文件。
3、原生插件的增改,同样不能使用此方式。
4、#ifdef APP-PLUS 条件编译,仅在 App 平台执行此升级逻辑。
5、appid 以及版本信息等,在 HBuilderX 真机运行开发期间,均为 HBuilder 这个应用的信息,因此需要打包自定义基座或正式包测试升级功能。
6、plus.runtime.version 或者 uni.getSystemInfo() 读取到的是 apk/ipa 包的版本号,而非 manifest.json 资源中的版本信息,所以这里用 plus.runtime.getProperty() 来获取相关信息。
7、安装 wgt 资源包成功后,必须执行 plus.runtime.restart(),否则新的内容并不会生效。
8、如果App的原生引擎不升级,只升级wgt包时需要注意测试wgt资源和原生基座的兼容性。平台默认会对不匹配的版本进行提醒,如果自测没问题,可以在manifest中配置忽略提示
总结
今天你学到了什么?Uni-App 增量更新你学会了吗?