這篇文章默認(rèn)讀者已經(jīng)了解Android Studio編輯器下android工程如何創(chuàng)建卓缰。
如果有錯誤或不準(zhǔn)確的地方慌盯,歡迎指正牡昆。
注意:如果一點基礎(chǔ)沒有姚炕,以下目錄有看不懂的不要緊摊欠,未來用到的時候會有詳細(xì)的介紹。
一柱宦、.gradle:gradle系統(tǒng)編譯文件夾些椒。
android studio使用gradle構(gòu)建腳本,使用Groovy語言掸刊∶飧猓可以理解為為了方便構(gòu)建項目的工具。而.gradle文件夾中就是這個工具的編譯文件忧侧。
二石窑、.idea:編輯器編譯文件夾。
android studio是基于idea開發(fā)的編輯工具蚓炬。.idea文件夾可以理解為工作空間的配置文件夾松逊。
三、app:模塊文件夾肯夏。
android studio是以項目為工作空間的編輯器经宏。一個項目擁有一個窗體(即工作空間),而一個項目可以有多個模塊構(gòu)建驯击。
這個文件夾就是我們開發(fā)一款應(yīng)用程序最重要的文件夾了烁兰。所有的代碼、資源(包括圖片徊都、視頻沪斟、字體、第三方資源等)文件碟贾。
(一)币喧、build:代碼、資源等文件的編譯文件夾
(二)袱耽、libs:放置第三方依賴庫的文件夾杀餐。
一般用來放置.jar、.aar文件(*.so文件不推薦放在這里)
(三)朱巨、src:模塊的代碼史翘、資源文件夾
1、androidTest:android應(yīng)用程序測試用文件夾冀续。
說實話我沒用過琼讽,據(jù)說可以監(jiān)控和記錄應(yīng)用程序的運行狀態(tài)和結(jié)果。
2洪唐、main:資源和代碼文件夾
(1)钻蹬、java:代碼的文件路徑
一般代碼都放在java下的包名下,例如:
MainActivity.java放在java/com/example/myapplication/MainActivity.java
(2)、res:資源的文件路徑
①凭需、drawable:繪制資源文件
一般用于放置一些xml繪制文件问欠,也可以放一下圖片資源
可能還有drawable-v24肝匆、drawable-hdpi、drawable-mdpi等顺献,都是為了適配在不同分辨率的屏幕用的旗国。
②、layout:放置布局文件
我們使用的app所看到的頁面長什么樣注整,幾乎都是在這個文件夾下的xml所繪制的能曾。
③、mipmap:放置應(yīng)用程序logo的文件夾
在手機(jī)桌面上我們所看到的圖標(biāo)存放在這個文件夾下肿轨,同drawable文件夾寿冕,也有不同的分辨率的文件夾來適配不同分辨率的手機(jī)。
而我一般把應(yīng)用程序所用到的圖片也放在這里萝招,但是google官方不推薦把logo以外的圖標(biāo)放這里蚂斤,更希望把圖片放在drawable里存捺。
④槐沼、values:公共資源文件夾
這個文件夾里一般有顏色資源、文字資源捌治、樣式資源等文件夾岗钩,其他地方使用這些資源可以從這里調(diào)用,方便統(tǒng)一管理肖油。
(3)兼吓、AndroidManifest.xml:應(yīng)用程序配置文件
用來配置權(quán)限、程序入口森枪、應(yīng)用程序主題视搏、應(yīng)用程序組件等。
(四)县袱、test:單元測試文件夾
這個我也沒用過浑娜,可以在開發(fā)時測試代碼的運行結(jié)果,和androidTest的區(qū)別是androidTest是運行時測試用test是開發(fā)時測試用式散,androidTest一個依賴于android設(shè)備筋遭,test脫離android設(shè)備。
一般布局文件暴拄、樣式文件漓滔、圖片文件等都在這里。
(五)乖篷、.gitignore:該模塊的git版本控制文件
(六)响驴、build.gradle(app):該模塊的gradle配置文件。
這個配置文件就很重要了撕蔼,打包豁鲤、導(dǎo)入第三方石蔗、應(yīng)用支持的android版本、包名等等等...都需要在這里進(jìn)行配置畅形。
(七).proguard-rules.pro:模塊的混淆配置文件
一般來說一個項目打包上線后為了防止應(yīng)用程序被破解养距,都會混淆代碼,這樣可以使破解后代碼的可讀性大大降低日熬。注意:混淆不能阻止反編譯棍厌,但可以讓反編譯的代碼更加難以讀懂。
四竖席、gradle:gradle系統(tǒng)支持文件夾耘纱。
為了支持gradle系統(tǒng),gradle文件夾里包含了提供構(gòu)建支持的gradle-wrapper.jar文件和配置文件gradle-wrapper.properties
五毕荐、.gitignore:git版本控制管理文件
用戶管理git代碼忽略文件等束析。
六、gradle.properties(project):工程的構(gòu)建的配置文件
常用戶聲明遠(yuǎn)程倉庫的地址憎亚。
七员寇、gradlew和gradlew.bat:自動編譯的執(zhí)行腳本。
gradew是Linux系統(tǒng)中用的第美,gradlew.bat是Windows系統(tǒng)中用的蝶锋。
八、gradle.properties:gradle構(gòu)建環(huán)境的配置文件
關(guān)于構(gòu)建環(huán)境的配置以后再說什往。
九扳缕、settings.gradle:工程的模塊配置文件
之前說了,一個項目可以有多個模塊别威,這里就是配置這些模塊的地方躯舔。可以理解為該項目有配置下這些模塊構(gòu)成省古。
以上就是一個android工程的大概目錄結(jié)構(gòu)粥庄,基本上都介紹了,不過不全衫樊,剩下的將在以后使用到的時候再著重介紹