一、添加插件
新建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,第一次啟動的時候檢查更新並下載更新,第二次啟動的時候就會使用更新的版本。