Gradle的基本配置和依赖管理

基本配置

新建项目,目录结构如下:

这里写图片描述

(1)app/build.gradle

初始化的Gradle配置:


//表示该module是一个app module,应用了com.android.application插件
apply plugin: 'com.android.application'

android {
    //基于编译的SDK版本
    compileSdkVersion 26
    //构建工具版本
    buildToolsVersion "26.0.1"
    //默认配置
    defaultConfig {
        //配置报名
        applicationId "com.zhoujian.gradleandroid"
        //最小SDK版本
        minSdkVersion 14
        //目标SDK版本
        targetSdkVersion 26
        //版本号
        versionCode 1
        //版本名
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }

    //构建类型,常用的release和debug两种
    //可以在这里面启用混淆、配置签名信息等
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

// 不属于Android的专有配置了,它定义了该module需要依赖的jar,aar,jcenter库信息
dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
        exclude group: 'com.android.support', module: 'support-annotations'
    })
    compile 'com.android.support:appcompat-v7:26.+'
    compile 'com.android.support.constraint:constraint-layout:1.0.2'
    testCompile 'junit:junit:4.12'
}

(2)gradle-wrapper.properties

声明了gradle的目录与下载路径以及当前项目使用的gradle版本

#Wed Oct 11 20:07:46 CST 2017
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-3.3-all.zip

(3)根目录的build.gradle

// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
    repositories {
        //使用jcenter库
        jcenter()
    }
    dependencies {
        //依赖android提供的2.3.3的gradle build
        classpath 'com.android.tools.build:gradle:2.3.3'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

//为所有的工程的repositories配置为jcenters
allprojects {
    repositories {
        jcenter()
    }
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

(4)setting.gradle

包含的模块

include ':app'

依赖管理

jar包

把jar包放到Libs 目录下,右击添加即可

so包

在main目录下,新建文件夹jniLibs,把对应的.so文件放入,在buildTypes下,加入sourceSets

 buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }

    sourceSets {
        main {
            jniLibs.srcDirs = ['libs']
        }
    }

library工程

直接依赖library库:

dependencies {
       compile project(':library名字')

  }

.jar和.aar区别:

.jar:只包含了class文件与清单文件,不包含资源文件,如图片等所有res中的文件;

.aar:包含所有资源,class以及res资源文件全部包含。

已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 技术工厂 设计师:CSDN官方博客 返回首页
实付 9.90元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值