android-gradle 入門
什麼是 android-gradle
android-gradle
是由 Google Tools 開發團隊正式維護的 gradle
外掛 ,是自 2013 年 5 月 16 日 Google I / O 釋出以來的官方構建工具。
通過閱讀使用 Gradle 配置構建來學習基礎知識。
主要特點
Android Gradle 外掛的主要功能包括:
概述
- 下載並安裝 Android Studio
- 開啟它並使用所有預設設定建立一個新專案
理論上,你可以直接安裝 gradle,自己構建配置檔案和目錄結構。在實踐中,沒有人這樣做。
專案結構
專案資料夾結構通常如下所示:
android-gradle
外掛
gradle 專案通常分為子專案或模組,每個模組包含一個專用的構建指令碼。
外掛依賴項通常在主/頂級 build.gradle
檔案中宣告:
buildscript {
// maven repositories for dependencies
repositories {
jcenter()
}
// build script dependencies
dependencies {
// this is the dependency to the android build tools
classpath 'com.android.tools.build:gradle:2.1.2'
}
}
allprojects {
// maven repositories for all sub-project / modules
repositories {
jcenter()
}
}
在這個例子中,android-gradle
外掛版本是 2.1.2
,你可以從這一行看到:
classpath 'com.android.tools.build:gradle:2.1.2'
模組
該專案分為模組,每個模組包含一個專用的 build.gradle
指令碼。settings.gradle
檔案列出了這些模組:
include ':app'
冒號:
在某種程度上用作資料夾分隔符。
要使用該外掛,必須將其應用於每個模組的 build.gradle
檔案的頂部(示例中為 app
)。
對於 Android 應用程式:
apply plugin: 'com.android.application'
對於 Android 庫:
apply plugin: 'com.android.library'
然後在它的 android
標籤中配置:
android {
// gradle-android plugin configuration
}
基本的 Android 應用配置
Android Studio 為應用程式生成的 build.gradle
如下所示:
apply plugin: 'com.android.application'
android {
// setup which version of the SDK to build against and
// with what version of the build tools
compileSdkVersion 23
buildToolsVersion "23.0.2"
// default app configurations
defaultConfig {
// this is your app unique ID
applicationId "com.example.myapp"
// devices with lower SDK version can't install the app
minSdkVersion 14
// target SDK version, should be the last available one and
// match the compile one
targetSdkVersion 23
// integer and string version of your app
versionCode 1
versionName "1.0"
}
// default build types are "debug" and "release"
buildTypes {
release {
// enable / disable proguard optimization
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
// app dependencies
dependencies {
// any jar file in the libs folder
compile fileTree(dir: 'libs', include: ['*.jar'])
// test dependency
testCompile 'junit:junit:4.12'
// runtime dependency on the support library
compile 'com.android.support:appcompat-v7:24.0.0'
}
使用 Gradle 配置你的構建,可以教你更高階的 Android Gradle Plugin 設定和選項,並深入瞭解此設定的含義。
defaultConfig
就是這樣呼叫的,因為它可以用 Product Flavors 覆蓋。
buildTypes
標籤允許你設定如何構建你的應用程式以實現優化(如 proguard),你可以學習更多閱讀構建型別 。它還可用於設定應用程式的簽名。
你還應該瞭解有關如何宣告依賴關係的更多資訊 。如你所見,dependencies
標籤位於 android
之外:這意味著它不是由 Android 外掛定義的,而是標準的 gradle
。
Gradle Wrapper
預設情況下,Android Studio 還會安裝 gradle 包裝器 。這是一個可以直接從命令列執行的工具,它將在你第一次執行時下載本地特定版本的 gradle。
要啟動編譯應用程式,你可以啟動 gradle 包裝器
Linux / Mac:
./gradlew assemble
視窗:
gradlew assemble
該指令碼啟動包裝器,包含在專案根目錄中的 gradle
資料夾中:
gradle-wrapper.jar
:下載 gradle 並執行它的包裝器的程式碼gradle-wrapper.properties
定義包裝器應下載哪個 gradle 版本