我們創建了一個Android Project,打開就如下圖所示:
我們選擇Project視圖,就會有以下的項目文檔結構:
上面筆者標注的數字是接下來要講解的內容。
我們先來看1:
我們創建Application的時候,要求我們輸入項目名稱,1就是我們創建的項目,AndroidDevelopCourse是項目名稱,在實際開發中,我們要為我們項目取一個能明確表達產品的名稱,一般使用英文來描述,比如我們的課程是“Android開發課程”。1展開之后是我們完整的項目文檔結構。
2: 我們的Android 模塊,在AS當中,分為了Project(工作空間),Module(模塊)兩種概念,我們創建項目的時候會默認創建一個模塊,這里的app就是我們的一個module,一個Android應用程序的文檔結構。
3:libs,存放項目的類庫,例如我們項目中用到的.jar文件。
4:src,Android項目的源文件目錄,存放應用程序中所有用到的資源文件。
5:androidTest,存放我們應用程序單元測試代碼,我們可以在這里進行單元測試。
6:main,Android項目的主目錄,包含java目錄存放.java源代碼文件,res存放資源文件,包含圖像、字符串資源等等,AndroidManifest.xml是項目的配置文件。
7:build.gradle,Android項目的Gradle構建腳本,詳細解釋看以下注釋:
// 表示使用com.android.application插件。 apply plugin: 'com.android.application' // 配置所有android構建過程需要的參數 android { // 用於編譯的SDK版本 compileSdkVersion 21 // 用於Gradle編譯項目的工具版本 buildToolsVersion "21.1.2" // 項目默認配置 defaultConfig { // 應用程序包名 applicationId "com.devilwwj.androiddevelopcourse" // 最低支持Android版本 minSdkVersion 14 // 目標版本 targetSdkVersion 21 // 版本號 versionCode 1 // 版本名稱 versionName "1.0" } // 編譯類型。默認兩個:release和debug buildTypes { release { // 設置是否使用混淆 minifyEnabled false // 混淆文件 proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } } // 用於配置引用的依賴 dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) compile 'com.android.support:appcompat-v7:22.0.0' }
8:build,Android studio項目的編譯目錄。
9:gradle,存放項目用到的構建工具。
10:build.gradle,Android Studio項目的構建腳本
// Top-level build file where you can add configuration options common to all sub-projects/modules. // 用於設置驅動構建過程的代碼 buildscript { // 遠程倉庫 repositories // 這里依賴的遠程倉庫是jcenter jcenter() } // 聲明了使用Android Studio gradle插件版本。 dependencies { classpath 'com.android.tools.build:gradle:1.0.0' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } } allprojects { repositories { jcenter() } }
11:External Libraries,顯示項目所依賴的所有類庫。
以上基本上就是完整的Android Studio項目的文檔結構,有一些IDE的配置文件這里我們無需關注。