Android項目工程目錄簡介

主工程目錄:

一、.gradle

此文件夾是構(gòu)建工具 Gradle 的配置文件夾,也會存儲一些項目的構(gòu)建緩存信息,在首次build項目時,會根據(jù)配置文件去下載這些文件,此文件夾是自動生成的文件夾,我們無需關(guān)心里面的內(nèi)容,也不用去手動編輯

二、.idea

此文件夾是關(guān)于AS的配置文件夾(版權(quán),jar包等),此文件夾是自動生成的文件夾,我們無需關(guān)心里面的內(nèi)容,也不用去手動編輯

三、app

這是我們開發(fā)一款應(yīng)用程序最重要的文件夾了。所有的代碼、資源(包括圖片、視頻、字體、第三方資源等)文件。

1、build

項目編譯時自動生成的文件,無需關(guān)心里面的內(nèi)容

2、libs

項目中使用的第三方j(luò)ar、aar架包文件,放在這個目錄下的jar包都會被自動添加到構(gòu)建路徑里去。

3、src

①androidTest和test

androidTest:此處是用來編寫Android Test測試用例的,可以對項目進(jìn)行一些自動化測試。

test:此處是用來編寫Unit Test測試用例的,是對項目進(jìn)行自動化測試的另一種方式。

②main

資源和代碼文件夾

a、java

該目錄是放置我們所有Java代碼的地方

b、res

存放項目中的所有資源文件(圖片、圖標(biāo),布局、文字)

  • drawable:一般不放置圖片資源,存放一些動畫文件、選擇器文件、圖形配置文件等xml繪制資源文件,圖片資源一般放在其他drawable文件夾,可能還有drawable-v24、drawable-hdpi、drawable-mdpi 、drawable-xhdpi、drawable-xxhdpi、drawable-xxxhdpi都是為了適配在不同分辨率的屏幕用的。
  • layout:放置布局文件,我們使用的app所看到的頁面長什么樣,幾乎都是在這個文件夾下的xml所繪制的。
  • mipmap:一般存放應(yīng)用程序啟動圖標(biāo),而其他圖片資源盡量都放在drawable下,點九圖必須放在drawable下,放在mipmap會報錯
  • values:公共資源文件夾,這個文件夾里一般有顏色資源、文字資源、樣式資源等文件夾,其他地方使用這些資源可以從這里調(diào)用,方便統(tǒng)一管理。
c、AndroidManifest.xml

整個Android項目的配置文件,你在程序中定義的所有四大組件都需要在這個文件里注冊,另外還可以在這個文件中給應(yīng)用程序添加權(quán)限聲明。

4、.gitignore

這個文件用于將app模塊內(nèi)的指定的目錄或文件排除在版本控制之外,作用和外層的.gitignore文件類似

5、build.gradle(app)

app模塊的gradle構(gòu)建腳本

6.proguard-rules.pro

項目代碼的混淆規(guī)則文件,為了防止apk文件被別人破解時采取混淆代碼。注意:混淆不能阻止反編譯,但可以讓反編譯的代碼更加難以讀懂。

四、gradle

gradle是一個開源的自動構(gòu)建工具,可以作為android studio工程的依賴管理和打包工具,包括三方庫和jar包的依賴和鏈接, java和res等資源的編譯和打包

可以看到,gradle文件夾里包含了提供構(gòu)建支持的gradle-wrapper.jar文件和配置文件gradle-wrapper.properties,
gradle-wrapper.jar:是具體業(yè)務(wù)邏輯實現(xiàn)的jar包,gradlew最終還是使用Java執(zhí)行的這個jar包來執(zhí)行相關(guān)呢的Gradle操作。
gralde-wrapper.properties:該文件中聲明了gradle的版本和下載地址.

在第一次使用gradlew進(jìn)行項目構(gòu)建的時候,Gradle Wrapper會自動下載gralde-wrapper.properties指定的gradle版本.
Gradle Wrapper 它是一個腳本,調(diào)用了已經(jīng)聲明的 Gradle 版本,并且我們編譯時需要事先下載它。所以,開發(fā)者能夠快速的啟動并且運行 Gradle 項目,調(diào)用事先聲明的 Gradle 版本,編譯前去下載它,不用再手動安裝,從而節(jié)省了時間成本。當(dāng)然AndroidStudio會首先檢查本地是否有緩存gradle,沒有就會自動聯(lián)網(wǎng)下載gradle,這樣就不用自己先下載gradle,當(dāng)然如果要使用離線模式,也可以自己setting:File---Settings---Build,Execution,Deployment---Gradle,如圖所示:

五、.gitignore

當(dāng)工程使用到了git版本控制時,該文件用于配置忽略管控指定的目錄、文件等,如下圖:

六、build.gradle

項目全局的gradle構(gòu)建腳本,這里指的是gradle項目自動編譯構(gòu)建文件,指定了android gradle tools的版本,以及gradle倉庫配置

七、gradle.properties

此文件是全局的gradle配置文件,在這里配置的屬性將會影響到項目中所有的gradle編譯腳本。gradle.properties里面定義的屬性是全局的,可以在各個模塊的build.gradle里面直接引用.我們可以在里面做一些Gradle文件的全局性的配置,也可以將比較私密的信息放在里面,防止泄露。

八、gradlew和gradlew.bat

這兩個文件是用來在命令行界面中執(zhí)行g(shù)radle命令的,其中 gradlew是在Linux或Mac系統(tǒng)中使用的,gradlew.bat是在 Windows系統(tǒng)中使用的。

九、local.properties

指明了android SDK ,NDK等在本地的路徑,一般自動生成,除非發(fā)生變化,則要修改

十、settings.gradle

項目中引入module的管理文件

外部資源目錄:

External Libraries

JDK、SDK版本,手動引入lib下三方庫版本,遠(yuǎn)程依賴引入三方庫版本

原創(chuàng)文章,有什么不對的地方歡迎指正,一起進(jìn)步!

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容