一般通過
上面紅框截圖工具下載下來的SDK裡面的內容都是應該向下邊截圖一樣的:
下面說一下主要的幾個資料夾是幹嘛的,方便以後整理。由於之前看到自己的SDK包下有40多G內容太嚇人了。
build-tools資料夾
此資料夾就是用於編譯android專案用到的。意思是該android專案用什麼版本的android編譯;
在AS開啟專案裡面的gradle配置檔案裡面的builToolsVersion就是對應這裡的。
所以一般我自己的該資料夾都有好幾個android版本可以進行編譯,主要是方便為之前的專案和網上下載下來的專案好編譯;如果在網上下載下來的專案裡面的gradle配置檔案自己的SDK沒有改builToolsVersion版本會編譯不成功的,解決方法一個就是下載專案要求的,第二個就是修改buildToolsVersion的版本號,這樣一改,一般下面的v4和v7相容包也要更改。即下面截圖部分:
docs資料夾
其實該資料夾就是androidSDK文件,整個Android官網的頁面資訊都在這裡,如果你在斷網的情況下可以用瀏覽器開啟index.html
這樣就可以瀏覽到Android的官網,官方的API
extras資料夾
這個資料夾主要用於存放v4和v7包,還有一些是USB的驅動檔案(是放在這個資料夾下的另外個資料夾裡面)
platforms資料夾
這裡就是存放不同版本的SDK,在AS開啟專案裡面的gradle配置檔案裡面的targetSdkVersion就是對應這裡的。
一般同build-tools資料夾一樣都會存放好幾個版本
platform-tools資料夾
它主要是存放Android平臺的相關工具。如:adb.exe、sqlite3.exe
samples資料夾
該檔案是存放android官網寫一些Demo,學習Android,其實這裡就有很好的案例可以借鑑
sources資料夾
這個資料夾其實就是存放android的原始碼,一般我們在AS開啟都會看到原始碼,是因為AS自帶反編譯功能把.class檔案都反編譯過來了,但是你把原始碼下下來,即這個資料夾有相關版本的原始碼,AS是可以找到對應的.java檔案而且這些檔案都有大量的註釋。這裡其實也是學習android原始碼的好地方。
system-images資料夾
該資料夾就是存放虛擬機器檔案的,所佔的空間最大。一個版本的虛擬機器就可以有10幾G。所以如果需要瘦身SDK資料夾可以從此入手。
tools資料夾
這裡存放一些Android開發用到的工具。如生成.9圖片;除錯工具;DDMS等
add-ons資料夾
這個資料夾可能不是所有人都有,因為是下載了一些第三方框架才會出現此資料夾。如butterknife,okhttp等
SDKmanager
最後看看SDKmanager其實需要下載些什麼就足夠了。
其實就下紅色框下的就可以進行開發了,(版本視需要下載);其餘是看自己需要是否下載如原始碼,擴充套件包第三方框架;
其實在我第一個截圖還有幾個資料夾是沒有說明的,在這裡我還沒有搞懂是怎麼出來的,但是肯定的是不影響你開發的,可能是當初編譯專案時產生出來的。算是我自己的知識盲區吧。
這裡記錄一下編譯專案的邏輯關係
這裡有篇文章關於這些問題:
Android Studio中gradle版本對應關係
Android studio 編譯需要保證:SDK Build Tools 版本,Gradle 版本,Gradle Plugin 版本 相容。
有個邏輯關係:
要重點關注Gradle版本的版本 ,因為版本決定了 SDK Build Tools 版本與 Gradle Plugin 版本。
compileSdkVersion,決定了app所能使用的api的上限,如果編譯SDK為api16的,則app不能api16之後新增的api,只能使用api16及之前的api。
minSdkVersion,決定了app所能使用的api的下限。
targetSdkVersion,如果targetSdkVersion是10但是手機系統的是11,那麼系統在某些方面會做向前相容,而不會使用最新的特性(比如大屏特性,api11才有的)。