1. 程式人生 > >Android平臺app打包時遇到的問題:從Could not resolve com.android.tools.build:gradle:3.0.0.說起

Android平臺app打包時遇到的問題:從Could not resolve com.android.tools.build:gradle:3.0.0.說起

一、照例,先說一下上下文

最近進行App的打包,平臺為IOS和Android,分別都遇到了非常多的坑,後續會整理一下一起貼出來與大家交流。
目前先說一說剛剛解決的在Android平臺下打包遇到的一個超級大坑。

二、用到的環境

  1. Android SDK: android-sdk_r24.4.1-windows 環境變數已配置完畢
  2. Node.jd: node-v8.11.3-x64.msi環境變數已配置完畢
  3. Git: Git-2.17.1.2-64-bit.exe環境變數已配置完畢
  4. ionic: 通過Noid,js的npm工具安裝
  5. Gradle:gradle-4.8
    環境變數已配置完畢

三、打包開始

  1. cd 進入工程目錄下,執行 ionic cordova build,選擇android,大坑開始~
    這裡寫圖片描述

  2. 看見圖中粉色框子的報錯資訊了沒?相信進來看這篇文章的朋友都報了這個錯誤吧,是不是百度搜索了我標註黃框子的報錯語句Could not resolve com.android.tools.build:gradle:3.0.0
    百度上關於這條報錯的解決方法有好多好多,大家都是在搜尋中剛好見到了能解決自己問題的前輩留下的方法。然而,我在百度搜索了將近兩天,各種方法都試過了,更換gradle版本、新增npm代理、x牆、build.gradle檔案新增東西等等,依然還是不行,已然準備被辭退回家喝農藥了。

  3. 如果你也像我一樣各種方法都試過了,依然還是報這個錯誤的話,請你想一想,你最初安裝Android SDK的時候,是不是因為執行Android SDK Manager下載SDK外掛包的時候,因為國牆的問題,在你windows系統的hosts中新增過什麼東西?
    這裡寫圖片描述
    這裡寫圖片描述

  4. 這個問題點我早已經忘得乾乾淨淨的,如果不是對著電腦螢幕的報錯資訊瞪著看出雪花來的話,根本不會想到這裡。刪除hosts中自己新增的那部分內容,第一個坑被解決!

  5. 重新打包,結果很快就遇到了第二個小坑
You have not accepted the license agreements of the following SDK components
[Android SDK Platform 26
]. Before building your project, you need to accept the license agreements and complete the installation of the missing components using the Android Studio SDK Manager.

這是完整截圖:
這裡寫圖片描述

對於這個小坑,我採用了三種辦法同時下手(究竟哪個是治本的,不得而知),完美解決:
1. 看到了Android SDK Platform 26Android Studio SDK Manager,果斷回頭升級Android Studio SDK Manager關於Android SDK 26的部分(瞎蒙唄,萬一對了呢)
這裡寫圖片描述

2.參考這位前輩的做法:

這裡寫圖片描述
這裡寫圖片描述
3.參考這位前輩的做法:

這裡寫圖片描述

最後大功告成:
這裡寫圖片描述

當然,這是是測試打包檔案,正式釋出的還需簽名打包。而且這僅僅是作者這幾天來遇到的無數問題中的一個,算是比較繞彎的。等時間充裕了,會把完整的IOS和Android平臺打包的環境配置和流程以及遇到的數不清的問題貼出來,算是做一個備忘錄。

關於升級Android SDK Manager時國牆的問題,如果你正在撓頭,可以看我另外一篇文章。
最後請您原諒我知識和言語的貧瘠,因為我只是個初學者。