gradle of Andorid(一·)

来源:互联网 发布:科蓝软件java面试题 编辑:程序博客网 时间:2024/06/05 14:26

gradle大家应该都不陌生吧,他是Android studio里的构建工具,但是初次看到gradle的时候还是很迷茫的,根本搞不懂里面那些都是些啥啥玩意儿。今天就在这里粗略的把常用的字段解释一下,当然要看详细的还是去官网看吧。 这里就当抛砖引玉,毕竟我还是初级选手。

gradle是用Groovy语言来写的(其实我也不会这个语言),一般会包含下列这么几个大属性:

apply plugin:

buildcript{}

repositorse{}

android{}

dependencies{}

一.apply plugin

这个相当于我们的import,是导入我们所需要的插件的

二.buildscript{}

官网给的解释是,gradle files uses buildscript to defines the Gradle repositorise and dependencis. gradle文件用buildscript来构建Gradle的依赖和库。它里面一般会包含repositories 和 dependecies。这里你也许会奇怪为啥外面有repositories 和 dependecies这里面又有呢,其实答案非常简单。buildscript中的声明是gradle脚本自身需要使用的资源。可以声明的资源包括依赖项、第三方插件、maven仓库地址等。而在build.gradle文件中直接声明的依赖项、仓库地址等信息是项目自身需要的资源。

三.repositorse{}

module本身需要的类库

四.android{}

这里包含了module编译时的各种信息,其中包括一些AndroidMainfest.xml里的属性也可以在这里修改,而且是可以动态设置的哟。

compilSDKVersion:编译使用的SDK版本,如SDK_19,SDK_22等 

buildToolsVersion:编译工具的版本,包含打包工具等,一般来所tools的版本要大于等于SDK的版本

defaultConfigure{}:这里的属性可以动态的设置AndroidMainfest.xml里的属性,比如applicationId,minSDKVersion,VersionCode,Versionname等

buildType:control how to build you app,默认情况下有两种,debug和release,可以对不同的包设置不同的处理,比如最常见和基本的就是在release里加入混淆

buildFlavor:多渠道打包会用到这个,一般和buildType联合使用,在AS右下角的Build Varisans里,可以看到他们联合使用的结果,下一遍来专门讲解buildFlavor和buildType把,这里略过,记得有这个东西儿就好了

五.dependencies{};module所需要的依赖,分为三种,

一种是同一个工程里依赖其它的Module  eg:compil project(":map")

而是remote库,比如github上得 eg:compile "project path"'

还有一种就是本地的jar包 eg compile files("name") 还有就是compile fileTtress(,)

好了,这个就是在一个Module下,gradle的最基本结构了,当然了,你还可以生命变量啊,之类的乱七八糟的东西儿,这里写得时最基础的


0 0
原创粉丝点击