Android的Gradle知识1-Android项目中Gradle相关文件和作用
Android的Gradle知识2-Gradle基本组件和工作流
Android的Gradle知识3-自定义Gradle插件
上篇文章Android的Gradle知识3-自定义Gradle插件,我们搭建好了Gradle插件,现在我们要实现相关功能,但是Gradle插件是用Groovy语言写的,所以这篇文章对Groovy语言做简单的介绍。
- 基本语法
在Groovy中也是用class关键字定义一个类例如:
package com.yim.plugindemo
class MyGroovyClass {
static void main(String[] args) {
println("Hello World")
}
}
- 变量:通过基本数据或者def关键字定义变量;
- 方法:Groovy中的方法是使用返回类型或使用def关键字定义的。方法可以接收任意数量的参数。定义参数时,不必显式定义类型。可以添加修饰符,如public,private和protected。默认情况下,如果未提供可见性修饰符,则该方法为public。
- 实例化:new关键字创建一个实例
例如:
package com.yim.plugindemo
class MyGroovyClass {
String name;
static void main(String[] args) {
println("Hello World")
}
def createInstantiation() {
def MyGroovyClass m = new MyGroovyClass();
m.name = "你好!"
}
}
- 基本数据类型
byte -这是用来表示字节值。例如2。
short -这是用来表示一个短整型。例如10。
int -这是用来表示整数。例如1234。
long -这是用来表示一个长整型。例如10000090。
float -这是用来表示32位浮点数。例如12.34。
double -这是用来表示64位浮点数,这些数字是有时可能需要的更长的十进制数表示。例如12.3456565。
char -这定义了单个字符文字。例如“A”。
Boolean -这表示一个布尔值,可以是true或false。
String -这些是以字符串的形式表示的文本。例如,“Hello World”的。 - 逻辑控制语句
//while
while(condition) {
statement #1
statement #2
...
}
//for
for(variable declaration;expression;Increment) {
statement #1
statement #2
…
}
//for-in语句
for(variable in range) {
statement #1
statement #2
…
}
//if/else
if(condition) {
statement #1
statement #2
...
} else{
statement #3
statement #4
}
//switch
switch(expression) {
case expression #1:
statement #1
...
case expression #2:
statement #2
...
case expression #N:
statement #N
...
default:
statement #Default
...
}
- 闭包Closures
闭包是一个短的匿名代码块。
package com.yim.plugindemo
class MyGroovyClass {
static void main(String[] args) {
def clos = { println "Hello World" }
clos.call()
def clos2 = { param -> println "Hello ${param}" };
clos2.call("World!!!!");
}
}
- Android项目中Gradle中的Groovy
Android项目中Gradle中文件用的也是Groovy语法,主要有那些Gradle文件呢?有顶层build.gradle;模块中的build.gradle;setting.gradle;
例如:build.gradle引入插件的代码
apply plugin: 'com.android.application'
是Groovy语言的简写。没有简写的情况是
apply([plugin: 'com.android.application'])
apply是一个方法,接受一个map类型的参数。
关于Groovy的语法就简单介绍到这里,想了解更多的查看官网和参考中的相关资料。
Android的Gradle知识1-Android项目中Gradle相关文件和作用
Android的Gradle知识2-Gradle基本组件和工作流
Android的Gradle知识3-自定义Gradle插件
参考
- https://www.w3cschool.cn/groovy/
- 《Gradle for Android》
- 《深入理解Android之Gradle》