1. 程式人生 > >關於Android Studio中安裝和gradle的一些坑

關於Android Studio中安裝和gradle的一些坑

本人從開始用Android Studio到現在已經快一年了吧,在我剛開始用的時候Android Studio還是1.2的版本。當時安裝會因為國內牆的緣故,導致下載SDK步驟卡死無法安裝。

最近的版本似乎都沒出現這個問題,但是還是要吐槽一下最近的2.2.3的更新。這個版本安裝包自帶的SDK裡build tools版本是25.0.2,支援的最低gradle版本是3.3,然而安裝包內自帶的gradle版本是3.2,所以單純這個用安裝包你並不能建立任何完整的專案,連自帶的Helloworld專案都會報錯,這在部門最近招新的時候坑了不少小鮮肉。

既然我說明了原因,那解決方法很明顯:

(1)下載sdk,下載更早版本的build tools。sdk manager怎麼設定映象什麼的我就不多說了,這個隨便都能找到

(2)更新gradle。這個東西說實話我也不是很清楚它的內部構造,我只知道它在更新AS和專案合作的時候會導致很多問題。(對,我是被坑出經驗的微笑

所以下面就來講講gradle。

首先這個東西主要坑就在於,它不跟SDK一起更新,是屬於AS自己的東西。在你的電腦中沒有專案指定的gradle版本的話,AS就會預設去下載。由於被牆的原因,下載肯定會異常的緩慢甚至根本不動。如果有可靠的VPN可以為AS設定代理,完美解決牆的問題。但是像我這種學生狗,能省的錢還是會去省,有不用花錢的辦法一般不會花錢。所以在不用VPN的情況下,怎麼解決呢?

首先,既然gradle版本是專案指定的,那麼我們只要修改專案的gradle配置,改成我們有的gradle不就行了?

一般來說,高版本的gradle會相容低版本的gradle。而使用高版本gradle的專案,改用低版本gradle也不一定會出問題(至少我沒遇見過)。在你拿到一個別人的專案,或者自己舊版AS的專案,為了使這個專案的gradle適應新的AS,我們需要修改三個檔案,就是下圖的三個檔案:

1、總專案的build.gradle

如上圖所示,注意denpendencies中的第一條,最後gradle:2.3.1(第二條是一個開源的資料庫工具類Realm)

這個2.3.1是AS的版本號,舊版AS這一條會是舊版的版本號。

2、app目錄下的的build.gradle

這個一般情況下不用修改,但是若出現build tools問題(例如開頭所說的2.2.3更新的問題)就要修改這個檔案中設定的build tools版本

3、gradle-wrapper.properties

這個檔案在專案的gralde/wrapper/目錄下,關鍵是這一句

其中gradle-3.3-all.zip指的就是指定gradle版本3.3,把3.3改成電腦上有的版本就可以了。

至於電腦上到底有哪些版本的gradle,一方面可以對照自己正常使用的專案中的這個檔案,另外還可以去AS目錄下的gradle檔案下檢視

如圖所示就是3.0到3.4版本的gradle,資料夾中包含的版本應該都可以使用。

然後,如果不想每次拿到專案都要改這些,另一個方法就是,自己去更新gradle,並把gradle放下AS目錄下的gradle資料夾中。這樣本地擁有指定的gradle,AS就不會去嘗試穿牆下載了。

下面貼一個資源網站,擁有很全的安卓開發工具下載資源,上面所說的gradle也可以在這裡下載,速度也很快。

http://www.androiddevtools.cn/

好了,暫時就說這麼多了,以後再踩到什麼坑再說吧。