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

来源:互联网 发布:淘宝投票活动说明 编辑:程序博客网 时间:2024/06/04 18:06

.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 项目)。

1 0
原创粉丝点击