gradle

作者: 皮卡丘的皮上丘 | 来源:发表于2019-02-22 20:28 被阅读10次

1,熟悉Android studio的话对于gradle一定不陌生,它是一种自动化构建工具,由Groovy语言编写,实现对project的配置管理。

2,gradle.piroperties文件

该文件存在于根目录的gradle/wrapper文件夹下。

配置说明:

distributionBase:下载gradle压缩包解压之后存储的主目录

distributionPath:相对于distributionPath解压之后gradle压缩包的路径

zipStoreBase :同distributionBase,不过是存放gradle zip 压缩包的

zipStorePath:同distributionPath一样,存在zip的

distributionUrl:gradle发行版本压缩包的下载地址

3,setting.gradle

该文件在根目录下,用来初始化及工程树配置的

一个Project可以对应多个moudle,一个项目添加依赖之后,就会出现在这个文件

4,build.gradle文件(project)

buildscript:用来声明gradle本身需要的资源文件。包括三方插件、仓库和依赖项等。

repositories:仓库,jcenter()、maven()和google()就是托管第三方插件的平台

dependencies:gradle需要的插件

ext:在开发时为了统一版本号,可以将版本配置文件抽离出来,使用一个gradle文件进行管理,在需要的地方机型引用,需要修改的时候只需要更改版本文件即可,不再需要多出更改。

verison.gradle

build.gradle (project)

builde.gradle(moudle)

allprojects:所有moudle都需要用到的依赖包,单独的moudle也可以自己设置

task clean:运行gradle clean时,执行此处定义的task。该任务继承自Delete,删除根目录中的build目录。相当于Android studio的clean

5,build.gradle (moudle)

apply plugin 'XXX' :二进制插件

apply from 'XXX':脚本文件

“com.android.application” App 插件id

"com.android.Library"  Library 插件id

"com.android.test" Test插件id

android{}  Android Gradle 工程配置入口 

compileSdkVersion  : 编译的SDK版本

buildToolsVersion : 构建Android工程工具版本

defaultConfig{}: 工程的默认配置,它是一个ProductFlavor。ProductFlavor可根据不同配置生成多个apk包。

applicationId : 包名配置。 包名是app对外发布的唯一标识。在签名、申请第三方库和发布的时候用到。可以与Manifest中的package不一致,package指代码目录下的路径,两者没有必然联系。

minSdkVersion : 支持的Android API最低版本,低于该版本的机型不可使用此app.

targetSdkVersion :目标开发版本,是基于那个版本进行开发的。

versionCode:app的版本号,升级的时候用到。

versionName: 标识app的版本名称。

multiDexEnabled : 用于配置该BuildType是否启用自动拆分多个Dex的功能。一般用程序中代码太多,超过了65535个方法的时候。

ndk{} :包括'armeabi', 'x86', 'armeabi-v7a', 'mips'四个平台,在生成so库的时候使用。

sourceSets :指定Java源码或资源目录

buildTypes:构建类型,内置了debug和release

signingConfigs :签名配置

productFlavors:多渠道打包

manifestPlaceholders:占位符

    productFlavors设置  manifestPlaceholders = [APP_NAME: "(测试)"],在AndroidManifest中可以通过${APP_NAME}获取对应的值

buildConfigField :

flavorDimensions:

dexOptions:

dependencies{ }

相关文章

网友评论

    本文标题:gradle

    本文链接:https://www.haomeiwen.com/subject/kuqphqtx.html