1. 程式人生 > >Android studio 目錄結構

Android studio 目錄結構

轉:http://segmentfault.com/a/1190000002963895

首先看下一個App的最簡單的目錄結構

clipboard.png
【= = 好複雜的樣子】

OK,我們這麼看,第一,把這麼多檔案先分成這麼三塊
1. 編譯系統(Gradle)
2. 配置檔案
3. 應用模組

Gradle是Google推薦使用的一套基於Groovy的編譯系統指令碼(當然,你也可以使用ant),具體的介紹和文件可以參考這個傳送門:https://developer.android.com/tools/building/plugin-for-gradle.html
如果你學會之後,會對Android專案的編譯瞭如指掌(總之非常爽~),它的缺點目前是效率不高,然後因為有功夫網的存在,所以在bintray

上下載依賴會比較慢。

上面那個圖中出現gradle字眼的就是gradle相關的一些檔案。
Android中使用Gradle WrapperGradle進行了一層包裝,我猜測這麼做的原因是因為gradle更新速度實在太快,為了相容性著想,才出了這麼一套方案。(如果覺得這個猜想有問題請指正)
gradlew相關的檔案就是和Gradle Wrapper有關。我們對除了app資料夾以外的檔案列一下。

檔案(夾)名 用途
.gradle Gradle編譯系統,版本由wrapper指定
.idea Android Studio IDE所需要的檔案
build 程式碼編譯後生成的檔案存放的位置
gradle wrapper的jar和配置檔案所在的位置
.gitignore git使用的ignore檔案
build.gradle gradle編譯的相關配置檔案(相當於Makefile)
gradle.properties gradle相關的全域性屬性設定
gradlew *nix下的gradle wrapper可執行檔案
graldew.bat windows下的gradle wrapper可執行檔案
local.properties 本地屬性設定(key設定,android sdk位置等屬性),這個檔案是不推薦上傳到VCS中去的
settings.gradle 和設定相關的gradle指令碼

這些就是外部檔案相關的一些檔案的介紹。我們來看下更重要的app模組裡的檔案

clipboard.png
這是app模組下的檔案目錄結構,介紹下他們的用途

檔案(夾)名 用途
build 編譯後的檔案存在的位置(包括最終生成的apk也在這裡面)
libs 依賴的庫所在的位置(jaraar)
src 原始碼所在的目錄
src/main 主要程式碼所在位置(src/androidTest)就是測試程式碼所在位置了
src/main/assets android中附帶的一些檔案
src/main/java 最最重要的,我們的java程式碼所在的位置
src/main/jniLibs jni的一些動態庫所在的預設位置(.so檔案)
src/main/res android資原始檔所在位置
src/main/AndroidManifest.xml AndroidManifest不用介紹了吧~
build.gradle 和這個專案有關的gradle配置,相當於這個專案的Makefile,一些專案的依賴就寫在這裡面
proguard.pro 程式碼混淆配置檔案

以上就是對Android Studio目錄結構的簡單介紹~