一. ?安裝插件及包:
1.添加自動(dòng)更新插件
cordova plugin addcordova-hot-code-push-plugin
2. 添加cordova hot code push客戶端,用于生成www目錄下文件的hash碼,更新的時(shí)候?qū)Ρ仁褂谩?/h4>
??? npm install -g cordova-hot-code-push-cli(ps:npm無(wú)法安裝,可以 使用淘寶鏡像cnpm)
二. ?配置
1. ? ? 修改根目錄下的config.xml
<chcp>
? ? ? ? <native-interface version="1" />
? ? ? ? <config-file url="http://119.0.0.56:8088/hotApp/yuecainew/chcp.json" />
? ? </chcp>

version:用來(lái)判斷是否支持熱更新的版本,在corodva-chcp.json文件中可以設(shè)置支持的最低版本。
url:用來(lái)更新的服務(wù)端的地址
2.?項(xiàng)目根目錄運(yùn)行cordova-hcp?init
根據(jù)提示配置相關(guān)信息,項(xiàng)目根目錄會(huì)生成cordova-hcp.json??梢院罄m(xù)更新里面內(nèi)容,也可以自己新建,不通過(guò)命令行,重要參數(shù)配置
1. ? min_native_interface:1就是前面配置config.xml文件設(shè)置的version進(jìn)行比較
2. ?update:配置什么時(shí)候更新
3. ?content_url:服務(wù)器更新地址

三. ?更新
項(xiàng)目根目錄編譯cordova-hcp build,會(huì)在你的項(xiàng)目的www文件下生成兩個(gè)文件chcp.json和chcp.mainfest。chcp.json文件與corodva-hcp.json內(nèi)容一致只是增加了時(shí)間戳,chcp.mainfest包含所有web內(nèi)容文件的名字和MD5值,這兩個(gè)文件主要用來(lái)判斷是否更新。更新服務(wù)端代碼時(shí),編譯更新這兩個(gè)文件,生成新的版本信息,將www文件更新到服務(wù)端。
(項(xiàng)目根目錄編譯cordova-hcp serve,啟動(dòng)更新服務(wù)??梢耘袛啾镜睾头?wù)端代碼是否更新。)
四. ?問(wèn)題
1. 熱更新的項(xiàng)目,安裝包覆蓋安裝時(shí)是無(wú)法更新的。需要卸載后再安裝才能看到效果。
2.ios報(bào)錯(cuò):
Terminatingapp due to uncaught exception 'NSInvalidArgumentException', reason: '***-[NSURL URLByAppendingPathComponent:isDirectory:]: component, components, orpathExtension cannot be nil.'
熱更新引起的錯(cuò)誤。
由于根目錄下的www沒(méi)有chcp.json和chcp.manifest這兩個(gè)文件。