标签:
.gradle 文件介绍
一个 Android Studio 项目中,会存在多个 .gradle 文件。其中, project 目录下存在一个 build.gradle 文件和一个 settings.gradle 文件;每一个 module 会存在一个 build.gradle 文件。
关于 gradle 的基本讲解
Settings.gradle
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript { //用于设置驱动构建过程的代码
repositories {
jcenter()//声明使用 maven 仓库。在老版本中,此处为 mavenCentral()。
// mavenCentral() :表示依赖从 Central Maven 2 仓库中获取。
// jcenter() :表示依赖从 Bintary’s JCenter Maven 仓库中获取。
// **mavenLocal()** :表示依赖从本地的Maven仓库中获取。
}
dependencies {//声明了使用 Android Studio gradle 插件版本。一般升级AS或者导入从
//Eclipse中生成的项目时需要修改下面gradle版本。
classpath ‘com.android.tools.build:gradle:1.2.2‘
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {//设置每一个 module 的构建过程。在此例中,设置了每一个 module 使用
// maven 仓库依赖。
repositories {
jcenter()
}
}
默认的 project 目录下的 settings.gradle 文件内容如上。可有可能默认情况下, project 目录下的 settings.gradle 文件不存在,你可以自己创建。
? include ‘:app’:表示当前 project 下有一个名称为 app 的 module 。 下图:
如果你需要引入的 module 并不是在 工程的根目录下面
可以如下设置
include ‘:app2‘
project(‘:app2‘).projectDir = new File(‘path/to/app2‘)
接下来讲 module 中的 build.gradle 文件
apply plugin: ‘com.android.application‘
android {
compileSdkVersion 22
buildToolsVersion "22.0.1"
defaultConfig {
applicationId "com.hzchou.myapplication"
minSdkVersion 18
targetSdkVersion 22
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:22.2.0‘
}
? apply plugin: ‘com.android.application’:
表示使用 com.android.application 插件。也就是表示,这是一个 android application module 。 com.android.library 表示,这是一个 android library module 。
? android:
配置所有android构建过程需要的参数。
? compileSdkVersion:
用于编译的 SDK 版本。
? buildToolsVersion:
用于 Gradle 编译项目的工具版本。
? defaultConfig:
Android 项目默认设置。
1. applicationId:应用程序包名。
2. minSdkVersion:最低支持 Android 版本。
3. targetSdkVersion:目标版本。实际上应为测试环境下测试机的 Android 版本。
4. versionCode:版本号。
5. versionName:版本名称。
? buildTypes:
编译类型。默认有两个: release 和 debug 。我们可以在此处添加自己的 buildTypes ,可在 Build Variants 面板看到
? minifyEnabled:
是否使用混淆。在老版本中为 runProguard ,新版本之所换名称,是因为新版本支持去掉没使用到的资源文件,而 runProguard 这个名称已不合适了。
? proguardFiles:
使用的混淆文件,可以使用多个混淆文件。此例中,使用了 SDK 中的 proguard-android.txt 文件以及当前 module 目录下的 proguard-rules.pro 文件。
? dependencies:
用于配制引用的依赖。
1. compile fileTree(dir: ‘libs’, include: [‘*.jar’]):
引用当前 module 目录下的 libs 文件夹中的所有 .jar 文件。
2. compile ‘com.android.support:appcompat-v7:21.0.3’:
引用 21.0.3版本的 appcompat-v7 (也就是常用的v7* library 项目)。
Android开发工具之Android Studio----Gradle
标签:
原文地址:http://blog.csdn.net/tiandiwuya/article/details/51356234