如何实现升级更新?"/>
uni-app在App平台如何实现升级更新?
使用 uni-app 开发,可将代码编译到iOS、Android、微信小程序等多个平台,升级时也需考虑多平台同步升级。
uni-app发布为小程序的升级模式较简单,只需将开发完的代码提交小程序后台,待审核通过后用户将自动升级。
App端的升级,又分为整包更新和资源热更新两种。
- 整包更新,即常规的整个App安装包重新下载安装。
- 资源热更新,即App并重新安装,里面的js等前端代码进行更新。
资源热更新另见文档:/article/35667
本文重点讲解整包更新。
一般iOS Appstore的安装包,无法直接更新。App启动后检查有新版本,只能调整到Appstore,然后用户在Appstore的详情页点击更新按钮。
而Android App,可以直接下载新的apk,只要包名和证书不变,就可以覆盖安装。
App升级,强烈推荐使用uniCloud。
- 把apk存放到uniCloud的cdn上,可以免费使用
- 有现成的插件,不用写升级逻辑,配好地址、版本、更新日志等参数,就能直接用,详见:/plugin?id=2226
如果不使用uniCloud,自己也可以写升级逻辑,下文讲解了常见的逻辑,但下文不是DCloud约定的强制逻辑,只是一般性常见做法的介绍。
接口约定
如下数据接口约定仅为示例,开发者可以自定义接口参数。
请求地址:/update
请求方法:GET
请求数据:
{
"appid": plus.runtime.appid,
"version": plus.runtime.version
}
响应数据:
{
"status":1,//升级标志,1:需要升级;0:无需升级
"note": "修复bug1;\n修复bug2;",
更多推荐
uni-app在App平台如何实现升级更新?
发布评论