项目案例

ionic2/3-热更新(cordova-hot-code-pu

2018-05-23  本文已影响37人  JoyoDuan

前言

准备

ps: 如需要压缩,使用ionic build --prod

图片.png

执行后会在项目根目录下生成一个cordova-hcp.json文件

图片.png
图片.png
{
  "name": "supowercar-passenger",
  "ios_identifier": "com.supowercar.passenger",
  "android_identifier": "com.supowercar.passenger",
  "update": "start",
  "content_url": "http://192.168.1.155:8080/www"
}

以上代码中:
content_url是更新内容的服务器地址;
update是更新类型,有三种取值,分别为startnowresume

app每次启动会去服务器判断有无更新,有更新则下载更新内容
start:下载完更新,app下次启动的时候才会更新内容;
now:下载完更新,立即刷新页面应用更新(方便测试);
resume:下载完更新,当app从后台切换到前台时应用更新(按手机home键进入后台)

会在www目录下生成两个文件:chcp.manifestchcp.json
chcp.manifest描述了www目录中每个文件的hash值,热更新就是通过对比hash值是否相等,来确定需要更新哪个文件

图片.png
图片.png

开始

官网还推荐安装插件cordova plugin add cordova-hot-code-push-local-dev-addon(没必要安装)

图片.png
<chcp>
    <config-file url="http://192.168.1.155/www/chcp.json" />
</chcp>
图片.png
cordova platform rm android
cordova platform add android
cordova run android

发布热更新

ps: 我修改的是src下的html文件,需要使用ionic serveionic build将最新代码编译到www目录下.=。
你的生产环境如果是压缩的,需要ionic build --prod

其他

上一篇下一篇

猜你喜欢

热点阅读