一、添加插件
新建Cordova项目 cordova create CordovaHotCode com.ezample.hotcode
添加平台 进入项目根目录,执行cordova platform add android
添加自动更新插件 cordova plugin add cordova-hot-code-push-plugin
全局添加cordova hot code push 用于生成www目录下文件的hash码,更新的时候对比使用。(注意:在全局安装) npm install -g cordova-hot-code-push-cli
注意:安装cordova-hot-code-push-cli时要翻墙,否则下载不下来。
二、配置config.xml
在config.xml的最后面(加在后面容易看清楚,加在第一层里面即可)加上如下代码:
<chcp>
<auto-download enabled="true" />
<auto-install enabled="true" />
<native-interface version="3"/>
<config-file url="http://172.16.1.245:8080/cordova-hot-update/cordova/www/chcp.json" />
</chcp>
auto-download 是否自动下载
auto-install 是否自动安装
native-interface cordova外壳需要的最低版本号
config-file url为服务器的更新地址,即www目录里的项目的地址
三、编译
- 上一步执行完之后,需要在项目根目录下的命令行中执行
cordova build,编译项目。
- 项目根目录下执行
cordova-hcp build
,这个命令在项目根目录下的www目录中生成chcp.json和chcp.manifest两个文件。chcp.json包含了项目的版本信息,是否立即更新,服务器的更新地址。chcp.manifest包含了www目录下的文件和对应的hash码值。 - 为了chcp.json文件生成的方便,我们需要在项目的根目录下新建一个文件cordova-hcp.json,内容为:
{
"update": "start",
"content_url": "http://test.com/cordova/www"
}
第一个为字段为设置 检测到更新时什么时候更新。
第二个服务器的地址,即放置在www里的这个项目的地址(上面是随便写的)。
上面执行完之后,可以直接在根目录执行cordova build,然后在\platforms\android\build\outputs\apk这个目录下生成了apk文件(未签名),直接安装就行。
四、服务器端更新之后的操作
- 服务器端就比较简单了,在修改项目根目录下的www目录之后,在根目录下执行cordova-hcp build.
- 直接把根目录下的www目录拷贝到服务器中,注意地址不要写错。然后启动我们的app,第一次启动的时候检查更新并下载更新,第二次启动的时候就会使用更新的版本。