
<p>
近日由于iOS平臺更新,cordova build命令失敗,不能再使用之前的命令推送熱更新了
</p>
<p>
之前命令:
</p>
<pre class="prism-highlight prism-language-bash">code-push release-cordova --build --isReleaseBuildType=true app_name ios --description "ios code push"</pre>
<p>
所以改為將 build設(shè)置為FALSE
--build=false
但是這樣推送的熱更新,到手機端更新會失敗,查看APP日志返回錯誤信息
</p>
<pre class="prism-highlight prism-language-bash">The update contents failed the data integrity check.</pre>
<p>
可以看到熱更新推送到服務(wù)器了,而且根據(jù)日志也發(fā)現(xiàn)手機端APP有檢測到熱更新并且下載完成
只是在最后階段hash驗證失敗,經(jīng)過研究發(fā)現(xiàn)是因為更新包打包時目前這種方式多打包了Mac下面的.DS_Store文件
所以在推送熱更新的命令前先清除 .DS_Store文件應(yīng)該就可以了,經(jīng)過測試問題解決了
新的打包命令
</p>
<pre class="prism-highlight prism-language-bash">find . -name .DS_Store | xargs rm -rf
code-push release-cordova --build=false --isReleaseBuildType=true app_name ios --description "ios code push"</pre>
<p>
</p>