界面介紹
講解1
這個界面,顯示了我們使用 Android Studio時經常接觸到的功能面板。
Project 面板。
用于瀏覽項目文件。 Project 面板會顯示當前的所有的 module 。 android application module 會顯示一個手機圖標(下圖中的 app );android library module 會顯示一個書架圖標(下圖中的 android-lib);java library module 會顯示一個咖啡圖標(下圖中的 java-lib )。
Build Variants 面板。
用于設置當前項目的 Build Variants ( Gradle 知識)。所有的 Module 默認都會有 release 和 debug 兩種選項。當你添加了 BuildTypes 和 productFlavors ,這里將出現(xiàn)更多的選項( Gradle 知識)。默認情況下, release 和 debug 的區(qū)別并不是很明顯;針對于代碼來說,是沒有區(qū)別的。
Android 面板。
功能類似于 Eclipse 中的 Logcat ,但是比其多了一些常用功能,例如:截圖,查看系統(tǒng)信息等。
編輯區(qū)。
用于編輯文件。
Gradle 面板。
Gradle 任務列表,雙擊可執(zhí)行 Gradle 任務。常用任務: build 、 clean 、 assemble 、assembleRelease 、 assembleDebug 、 lint 。
講解2
切換 Project 視圖。
默認的Project 面板顯示的目錄結構為 Android 。通過點擊可以進行切換。
常用按鈕
講解3
編譯右側 module 列表中顯示的 module 。
當前 project 的 module 列表。
運行左側 module 列表中顯示的 module 。
debug 左側 module 列表中顯示的 module 。
attach debugger to Android process 。
設置。
項目屬性。
使用 Gradle 編譯 project 。
虛擬機。
SDK Manager 。
DDMS 。
常用面板
講解4
Structure 用于顯示當前活動文件的結構。不僅僅支持 Java 文件,同時支持 Xml 文件、 .properties 配置文件等其他文件。
講解5
當你查看布局文件或者 drawable 的 Xml 文件時,右側會有 Preview 選項。用于預覽效果。
講解6
Terminal 面板。作用和命令行一下,你可以在這里執(zhí)行一些命令行命令。
講解7
Memory Monitor 用于查看 app 的內存使用情況。
講解8
當你的項目使用到了版本控制則會出來 Changes 面板。用于顯示針對本地版本庫,你修改的文件列表。默認的,修改文件顯示為藍色,新建文件為青色,刪除文件為灰色。
.gradle 文件簡單介紹
一個 Android Studio 項目中,會存在多個 .gradle 文件。其中, project 目錄下存在一個 build.gradle 文件和一個settings.gradle 文件;每一個 module 會存在一個 build.gradle 文件。
本文只是簡略的講解一下默認生成的 .gradle 文件的內容,更多 Gradle Plugin 的知識,請看這里。
{@projectName}\build.gradle
講解9
1
2
3
4
5
6
7
8
9
10
11
12
13
14
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:1.0.0'
}
}
allprojects {
repositories {
jcenter()
}
}
默認的 project 目錄下的 build.gradle 文件內容如上。
buildscript :用于設置驅動構建過程的代碼。
jcenter():聲明使用 maven 倉庫。在老版本中,此處為 mavenCentral()。
3. **mavenLocal()** :表示依賴從本地的Maven倉庫中獲取。
mavenCentral() :表示依賴從 Central Maven 2 倉庫中獲取。
jcenter() :表示依賴從 Bintary’s JCenter Maven 倉庫中獲取。
dependencies :聲明了使用 Android Studio gradle 插件版本。一般升級AS或者導入從Eclipse中生成的項目時需要修改下面gradle版本。具體的版本對應關系,請點擊。
allprojects:設置每一個 module 的構建過程。在此例中,設置了每一個 module 使用 maven 倉庫依賴。
在景德鎮(zhèn),默認的maven源可能無法訪問,可以通過以下的方式設置其他的maven源。當然,你也可以設置依賴本地庫。
maven {
url 'http://xx.xxx.xxx/xxx'
}
開源中國的源地址為:
http://maven.oschina.net/content/groups/public/
開源中國的thirdparty源地址為:
http://maven.oschina.net/content/repositories/thirdparty/
一個項目可以有好幾個庫。 Gradle 會根據(jù)依賴定義的順序在各個庫里尋找它們。在第一個庫里找到就不會再在第二個庫里進行尋找。
{@projectName}\settings.gradle
講解10
1
include ':app'
默認的 project 目錄下的 settings.gradle 文件內容如上。可有可能默認情況下, project 目錄下的settings.gradle 文件不存在,你可以自己創(chuàng)建。
include ‘:app’:表示當前 project 下有一個名稱為 app 的 module 。
如果你的一個 module 并不是 project 根目錄下,你可以這么設置。
1
2
include ':app2'
project(':app2').projectDir = new File('path/to/app2')
{@moduleName}\build.gradle
講解11
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
apply plugin: 'com.android.application'
android {
compileSdkVersion 21
buildToolsVersion '21.1.2'
defaultConfig {
applicationId 'cc.bb.aa.myapplication'
minSdkVersion 10
targetSdkVersion 21
versionCode 1
versionName '1.0'
}
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:21.0.3'
}
默認的 module 目錄下的 build.gradle 文件內容如上。
apply plugin: ‘com.android.application’:
表示使用 com.android.application 插件。也就是表示,這是一個 android application module 。com.android.library 表示,這是一個 android library module 。
android:
配置所有android構建過程需要的參數(shù)。
compileSdkVersion:
用于編譯的 SDK 版本。
buildToolsVersion:
用于 Gradle 編譯項目的工具版本。
defaultConfig:
Android 項目默認設置。
5. **versionName**:版本名稱。
applicationId:應用程序包名。
minSdkVersion:最低支持 Android 版本。
targetSdkVersion:目標版本。實際上應為測試環(huán)境下測試機的 Android 版本。
versionCode:版本號。
buildTypes:
編譯類型。默認有兩個: release 和 debug 。我們可以在此處添加自己的 buildTypes ,可在 Build Variants 面板看到(見 講解1 )。
2. **proguardFiles**:
使用的混淆文件,可以使用多個混淆文件。此例中,使用了 **SDK** 中的 **proguard-android.txt** 文件以及當前 **module** 目錄下的 **proguard-rules.pro** 文件。
minifyEnabled:
是否使用混淆。在老版本中為 runProguard ,新版本之所換名稱,是因為新版本支持去掉沒使用到的資源文件,而 runProguard 這個名稱已不合適了。
dependencies:
用于配制引用的依賴。
2. **compile ‘com.android.support:appcompat-v7:21.0.3′**:
引用 **21.0.3**版本的 **appcompat-v7** (也就是常用的 **v7** library 項目)。
compile fileTree(dir: ‘libs’, include: ['*.jar']):
引用當前 module 目錄下的 libs 文件夾中的所有 .jar 文件。
版本控制
講解12
當你在 Android Studio中創(chuàng)建了一個項目之后,默認是沒有版本控制的。如果你想對項目進行版本控制,可以這么設置。
VCS –> Enable Version Control Integration 。
如果你想取消某一個項目的版本控制,你可以在設置頁面中設置。
Version Control 右側列表中,選擇目標 module ,在點擊右側的減號即可。
講解13
如果你想從版本服務器中遷出項目,你可以這么設置。
VCS –> Checkout from Version Control ,選擇服務器的版本控制工具,填寫地址即可遷出。
在 Android Studio 起始頁面也可以進行遷出。
點擊 Checkout from Version Control,選擇服務器的版本控制工具,填寫地址即可遷出。