Gradle的更多用法
这里主要介绍app/build.gradle这个文件,因为这里面的配置是与我们应用开发最为息息相关的。首先,先看看我们都可以在这个文件中配置哪些内容(功能)。另外,这里略去了部分上文提到的一些配置:
android {
defaultConfig {
//默认配置项
}
buildTypes {
// 编译配置,release或debug版本的内容
}
compileOptions {
// Java 的版本配置
}
sourceSets {
//源码设置(项目目录结构的设置)
}
packagingOptions {
//打包时的相关配置
}
lintOptions {
//编译的 lint 开关,程序在buid的时候,会执行lint检查,有任何的错误或者警告提示,都会终止构建,我们可以将其关掉。
//abortOnError false
}
productFlavors {
//产品发布的一些东西,比如渠道、包名等
flavor1 {
}
flavor2 {
}
}
signingConfigs {
//签名的配置
release {
}
}
}
接下来将对部分功能特性(主要是与Android开发相关的特性)及使用进行详细介绍
- buildTypes–编译配置
这里主要是对release与debug版本做些不同的配置,如是否启用混淆、修改对应版本的包名、对应版本使用的签名等(更多配置可以查看:Build Types(构建类型))。
buildTypes {
release {
//为发布版本启用混淆
minifyEnabled true
//混淆文件
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
debug {
//将debug版本的包名设置为.debug以便能够同时在一台设备上安装debug和release版本的apk。
applicationIdSuffix ".debug"
}
}
- compileOptions–配置JDK版本
compileOptions {
//配置使用JDK1.8(8),比如需要使用Lambda特性时,那么就可以在这里进行JDK版本的配置
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
- sourceSets
配置项目的目录结构,其中较为常见的一个应用场景是,将Eclipse 中的项目迁移至AS