Android Studio目錄結構淺析!!!

 

Android Studio目錄結構淺析html

 

轉自:https://segmentfault.com/a/1190000002963895java

應各位朋友的要求,寫這篇文章,讓咱們來簡單瞭解下Android Studio中不一樣目錄(文件)的位置和用途。 首先看下一個App的最簡單的目錄結構linux

 【= = 好複雜的樣子】android

OK,咱們這麼看,第一,把這麼多文件先分紅這麼三塊
1. 編譯系統(Gradle)
2. 配置文件
3. 應用模塊git

Gradle是Google推薦使用的一套基於Groovy的編譯系統腳本(固然,你也能夠使用ant),具體的介紹和文檔能夠參考這個傳送門:https://developer.android.com/tools/building/plugin-for-gradle.html
若是你學會以後,會對Android項目的編譯瞭如指掌(總之很是爽~),它的缺點目前是效率不高,而後由於有功夫網的存在,因此在bintray上下載依賴會比較慢。github

上面那個圖中出現gradle字眼的就是gradle相關的一些文件。
Android中使用Gradle WrapperGradle進行了一層包裝,我猜想這麼作的緣由是由於gradle更新速度實在太快,爲了兼容性着想,纔出了這麼一套方案。(若是以爲這個猜測有問題請指正)
gradlew相關的文件就是和Gradle Wrapper有關。咱們對除了app文件夾之外的文件列一下。shell

文件(夾)名 用途
.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腳本

 

一、gradle文件夾:這裏面有兩個文件,gradle-wrapper.jar和gradle-wrapper.properties,它們就是gradle wrapper。gradle項目都會有,你能夠經過命令gradle init來建立它們(前提是本地安裝了gradle而且配置到了環境變量中)。segmentfault

二、gradle.properties : 從名字上就知道它是一個配置文件,沒錯,這裏面能夠定義一些常量供build.gradle使用,好比能夠配置簽名相關信息如keystore位置,密碼,keyalias等。windows

三、settings.gradle : 這個文件是用來配置多模塊的,好比你的項目有兩個模塊 module-a,module-b,那麼你就須要在這個文件中進行配置,格式以下:include ':module-a',':module-b'   。app

4.gradlew和gradlew.bat:這分別是linux下的shell腳本和windows下的批處理文件,它們的做用是根據gradle-wrapper.properties文件中的distributionUrl下載對應的gradle版本。這樣就能夠保證在不一樣的環境下構建時都是使用的統一版本的gradle,即便該環境沒有安裝gradle也能夠,由於gradle wrapper 會自動下載對應的gradle版本。gradlew的用法跟gradle如出一轍,好比執行構建gradle build命令,你能夠用gradlew build。gradlew即gradle wrapper的縮寫。

 1.導入本地jar包:跟eclipse不太同樣,android studio導入本地jar 除了將 jar 包放到模塊的 libs 目錄中之外,還得在該模塊的build.gradle 中進行配置,配置方式是在 dependencies 結點下進行以下聲明:compile files('libs/xxx.jar') 若是libs下有多個jar文件,能夠這樣聲明:

 1 .compile fileTree(dir: 'libs', include: ['*.jar']) 2.導入maven庫:compile 'com.android.support:appcompat-v7:21.0.3' 可見,格式爲compile 'groupId:artifactId:version'  3.導入某個project:

 

這些就是外部文件相關的一些文件的介紹。咱們來看下更重要的app模塊裏的文件

 這是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目錄結構的簡單介紹~

有問題能夠直接留言,我會盡快回復。

歡迎關注我Github 以及 @Gemini

相關文章
相關標籤/搜索