Android开发工具之Android Studio----Gradle

.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开发,gradle,Studio)