使用code-push熱更新失敗問題的解決

image.png

<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設置為FALSE
--build=false
但是這樣推送的熱更新,到手機端更新會失敗,查看APP日志返回錯誤信息

</p>
<pre class="prism-highlight prism-language-bash">The update contents failed the data integrity check.</pre>
<p>
可以看到熱更新推送到服務器了,而且根據日志也發現手機端APP有檢測到熱更新并且下載完成
只是在最后階段hash驗證失敗,經過研究發現是因為更新包打包時目前這種方式多打包了Mac下面的.DS_Store文件
所以在推送熱更新的命令前先清除 .DS_Store文件應該就可以了,經過測試問題解決了
新的打包命令

</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>

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。