Cordova打包報錯整理
好幾個需要注意的地方,都放在這一篇裡面吧。
一 .第一個是在進行新增android環境的時候出現錯誤,會報一個類似SDK環境變數配置不正確的錯誤,下次我遇到截圖,這次急著處理Bug忘記截圖了,這種時候兩種可能:
- android版本的問題,執行cordova platforms add android語句的時候後面加上android的版本號。
- SDK安裝目錄下有個檔案缺失一部分,這時需要自行下載檔案加進來,點選下載,下載SDK tools的壓縮包,解壓之後將tools裡面的templates資料夾覆蓋到你的SDK安裝目錄下,如果你發現你的tools資料夾同樣缺失很多的話,建議你直接將tools資料夾整個覆蓋(我第一次只覆蓋templates資料夾失敗)
二. 你生成的apk檔案在手機上面安裝之後開啟是空白,這種情況是android版本相容性問題,解決辦法是在cordova打包之前新增外掛,執行cordova plugin add cordova-plugin-crosswalk-webview,不過執行這個語句的時候有時候直接成功,有時候就會報個錯,但是當你檢視安裝的外掛時(cordova plugin ls)還能看到這個外掛。
三. 當你打包成功安裝成功開啟是你想要的頁面的時候你可能會發現你調用不了任何介面!!!這是跨域的問題,同樣需要安裝一個外掛whitelist,如果你發現你已經有這個外掛了那就先把這個外掛刪除重新安裝一次吧,如果沒有直接安裝外掛
注‘Android技術交流群752016839,歡迎大家加入交流,暢談!本群有免費學習資料視訊’
刪除外掛:cordova plugin remove cordova-plugin-whitelist
新增外掛:cordova plugin add cordova-plugin-whitelist
四. 這一點不是一個錯誤,類似於一個節省時間的處理方式:當你在執行cordova build android進行打包的時候可能會卡在下載gradle檔案上,這個時候開啟瀏覽器會發現下載速度20K,還會產生連線超時的現象,極易失敗,這裡我們可以複製提供的下載連結到迅雷裡面去下載:

image.png
下載完成之後將壓縮包放至當前cordova工程的\platforms\android\gradle資料夾下:

image.png
然後修改配置檔案,platforms\android\cordova\lib\builders資料夾下GradleBuilder.js檔案,將
var distributionUrl = process.env['CORDOVA_ANDROID_GRADLE_DISTRIBUTION_URL'] ||'http\: ofollow,noindex">//services.gradle.org/distributions/gradle-2.14.1-all.zip' ;
註釋掉,更換為:var distributionUrl = process.env['CORDOVA_ANDROID_GRADLE_DISTRIBUTION_URL'] || '../gradle-2.14.1-all.zip';

image.png
這個時候再執行打包操作就會很快了。
五. 假如你需要呼叫攝像頭,獲取手機檔案之類的你肯定要安裝外掛,但是在某些情況下雖然外掛安裝成功了但是在手機上面執行的時候並不能夠呼叫攝像頭,這個時候需要看一下cordova的配置檔案裡面是否添加了你剛安裝的外掛資訊(一般會自動加進來,但是我的沒加進來,我和另一臺機器的配置檔案在對比的時候才發現這個問題):

image.png
如果遇到這種情況就到cordova工程目錄下面找到config.xml配置檔案,看一下這裡面是否有安裝的外掛資訊,如果沒有就手動新增進來,需要注意版本號。
注‘Android技術交流群752016839,歡迎大家加入交流,暢談!本群有免費學習資料視訊’
CSDN原文: https://blog.csdn.net/single_cong/article/details/84073316