使用Cordova Hot Code Push进行Ionic App热更新

在做ionic APP开发时,在本地经过验证和调试,已解决ionic热更新问题。特记录下来。
表述如果有不当之处,欢迎指出,共同学习。

此次主要是做热更新,暂时还没做外壳更新。

安装Cordova Hot Code Push

ionic cordova plugin add cordova-hot-code-push-plugin

Cordova Hot Code Push文档参考 Cordova Hot Code Push

安装cordova Hot Code Push Cli

npm install -g cordova-hot-code-push-cli

Cordova Hot Code Push Cli 文档参考 Cordova Hot Code Push Cli

配置Platform

ionic cordova platform add android
ionic cordova platform add ios

配置 cordova hcp模板

在根目录下执行下面命令(tpb目录下)

cordova-hcp init

用于动态生成chcp.json和chcp.manifest文件的模板(不用每次手动更改chcp.json和chcp.manifest)

  • 可以暂时选择只配置下面三个选项

...
Enter project name: TopBss
Update method(required): resume 
Enter full URL: 远程域名地址/updates
...

Update method(required)有三种方式: now,start,resume
远程地址用来放app build后的www内部的所有文件

  • 生成后的cordova-hcp.json文件(在根目录中),并添加ios_identifier和android_identifier(config.xml中对应的ID和android-packageName)

{
    "name": "TopBss",
    "ios_identifier": ID,
    "android_identifier": android-packageName,
    "update": "start",
    "content_url": "远程域名地址/updates"
}

配置APP的config.xml


  
  
  

  • chcp.json 本地app和远程的chcp.json中的release进行对比,如果不一致则会进行下载更新
  • auto-download 设置为true时,则为自动下载远程需要更新的文件
  • auto-install 设置为true时,则为自动安装

修改完后,重新build APP,并重新生成chcp.json和chcp.manifest(生成的两个文件在www文件夹中)

ionic cordova build android --prod --release
(ios则执行 ionic cordova build ios --prod --release)

cordova-hcp build

将www内的所有文件发布到远程服务器。

PS:

  • 此次做的热更新主要是选择app从后台切换过来的时候安装更新。每次版本更新,都要执行一次cordova-hcp build,并将WWW内的文件传到服务器上。
  • config.xml和cordova-hcp.json中的服务器地址需要自己开个服务器存放www内的文件。

使用Cordova Hot Code Push进行Ionic App热更新 参考网址

你可能感兴趣的:(使用Cordova Hot Code Push进行Ionic App热更新)