概述
Android SDk Tool軟件開發(fā)工具包(software development kit)赂蕴。被軟件開發(fā)工程師用于為特定的軟件包柳弄、軟件框架、硬件平臺概说、操作系統(tǒng)等建立應(yīng)用軟件的開發(fā)工具的集合碧注,是Android專屬的軟件開發(fā)工具包。
Android SDK有兩種方式取得糖赔,第一是單獨下載SDK萍丐,第二是ADT Bundle(集成IDE)中自帶的。SDK里面的目錄結(jié)構(gòu)如下所示:
add-ones【文件夾】
里面保存著一些附加的庫放典,也就是第三方公司為Android平臺開發(fā)的附加功能系統(tǒng)逝变。比如GoogleMaps基茵。當(dāng)然你如果安裝了OphoneSDK,這里也會有一些類庫在里面壳影。
【剛開始的時候此目錄內(nèi)容為空】
build-tools【文件夾】
各版本SDK編譯工具拱层。
構(gòu)建項目時用到的工具。當(dāng)創(chuàng)建Android項目的時候會用到這個包宴咧。在創(chuàng)建項目的時候如果沒有此包會報錯根灯。這里還包括一些編譯工具,總之這個包不能少掺栅。
有構(gòu)建工具才能將你的代碼和資源文件等通過資源id等構(gòu)建成一個符合Android APP層次邏輯的Android項目烙肺。
對于Android studio開發(fā)環(huán)境來講,如果bundle.gradle文件的buildToolsVersion的值是本地缺少的某個版本的話氧卧,會出現(xiàn)下面的提示:
注意:
對于Android studio3.0開發(fā)環(huán)境桃笙,已經(jīng)沒有buildToolsVersion這個配置了,默認(rèn)使用最新的SDK的編譯工具版本假抄。
和platforms目錄中的SDK版本是多對一的對應(yīng)關(guān)系怎栽。
docs【文件夾】
離線開發(fā)者文檔Android SDK?API參考文檔。
extras【文件夾】
擴展開發(fā)包宿饱,如高版本的API在低版本中開發(fā)使用用到的兼容包v4、v7脚祟、v13等谬以。
該文件下也會存放Google提供的USB驅(qū)動,Intel提供的硬件加速附件工具包由桌。
sdk\extras\android\m2repository\com\android\support
platforms【文件夾】
這個文件夾是SDK里面最重要的文件为黎,這個文件夾里面含有各個版本的SDK——根據(jù)API Level劃分的SDK版本。
Android系統(tǒng)版本大大小小已經(jīng)經(jīng)歷了10多個版本行您,每個版本發(fā)布時Google都會提供一個sdk platform package供開發(fā)者使用铭乾。
使用Eclipse開發(fā)環(huán)境新建項目的時候,Compile With下拉菜單列表中顯示的就是這個文件夾中所有API Level版本的SDK娃循。
使用Eclipse開發(fā)環(huán)境創(chuàng)建模擬器的時候炕檩,Target下拉菜單列表顯示的也是這個文件夾中所有API Level版本的SDK。
使用Android Studio開發(fā)環(huán)境捌斧,如果bundle.gradle文件中的compileSdkVersion的API Level版本號不是這個文件夾中的其中一個笛质,則會提示下面錯誤:
有時候我們在導(dǎo)入別人的項目的時候發(fā)現(xiàn)導(dǎo)入后沒有SDK,就是因為我們本地的這個文件夾中沒有我們導(dǎo)入項目編譯時的SDK捞蚂,我們需要在這里加入SDK或者在項目的根目錄下的project.properties里面將compileSdkVersion改為platforms里面有的版本重新編譯即可妇押。
還有就是如果你在布局xml文件中如果編寫沒有錯誤,但是視圖預(yù)覽不了姓迅,可能是由于你SDK選擇的版本有問題敲霍。
platform-tools【文件夾】
該文件夾下放了Android平臺的相關(guān)工具比如adb.exe俊马、sqlite3.exe等。保存著一些通用工具肩杈,比如adb潭袱、和aapt、aidl锋恬、dx等文件屯换。提示:對于Android API Level1\2\3(最開始的版本),這里和platforms目錄中Android API Level1\2\3版本的SDK目錄中的tools文件夾有些重復(fù)与学,主要是從android2.3開始這些工具被劃分為通用了彤悔。
隨著SDK更新版本,這里的工具會有相應(yīng)更新變化索守,但是一般都是向后兼容晕窑。
小技巧:source.properties文件可以查看版本號。(其他目錄也通用)
samples?【文件夾】
Android SDK自帶的默認(rèn)示例工程卵佛,推薦初學(xué)者運行學(xué)習(xí)杨赤。
sdk\samples\android-5.1
sources【文件夾】
這個文件夾下面存放的是Android的源代碼。各版本SDK源碼截汪。
好處就是疾牲,可以在eclipse或者Android studio開發(fā)環(huán)境編碼過程中跳轉(zhuǎn)到源碼。
system-images【文件夾】
存放的是創(chuàng)建Android模擬器時的鏡像文件衙解,也就是在創(chuàng)建模擬器時CPU/ABI項需要選擇的阳柔。從android-14開始將模擬器映像文件整理在這里(原來放在platforms下)
使用Eclipse開發(fā)環(huán)境創(chuàng)建模擬器的時候,CPU/ABI下拉菜單列表對應(yīng)的是這個文件夾中的API Level版本的鏡像文件蚓峦。(如果沒有相應(yīng)的API Level版本的鏡像文件舌剂,則顯示為空)
temp【文件夾】
臨時夾,一般在SDK更新安裝時會自動生成一些文件暑椰。
tools【文件夾】
這個文件夾下存放了大量Android開發(fā)霍转、調(diào)試的工具。
該文件夾存放各個版本都可通用的工具一汽,里面有draw9patch 避消、hierarchyviewer、 emulator等工具角虫。比如:
ddms用于啟動Android調(diào)試工具沾谓;
logcat、屏幕截圖和文件管理器戳鹅;
draw9patch則是繪制android平臺的可縮放png圖片的工具均驶;
sqlite3可以在PC上操作SQLite數(shù)據(jù)庫;
monkeyrunner則是一個不錯的壓力測試應(yīng)用枫虏,模擬用戶隨機按鍵妇穴;
mksdcard則是模擬器SD映像的創(chuàng)建工具爬虱;
emulator是Android SDK模擬器主程序,不過從android 1.5開始腾它,需要輸入合適的參數(shù)才能啟動模擬器跑筝;
traceview作為android平臺上重要的調(diào)試工具。
新版本中精簡了一些:比如26.0.1
AVD Manager.exe【文件】
Android手機模擬器配置工具瞒滴,用于配置模擬器曲梗,只有先配置AVD才可運行模擬器。
對應(yīng)Android studio開發(fā)環(huán)境中的下面的圖標(biāo):
SDK Manager.exe【文件】
?SDK管理器妓忍,用于SDK更新虏两、下載、刪除世剖。
?對應(yīng)Android studio開發(fā)環(huán)境中的下面的圖標(biāo):
參考資料