什么是Android Studio中的Gradle?

Gradle对我来说有点困惑,对于新的Android开发人员也有点困惑。 任何人都可以解释Android Studio中的gradle是什么以及它的目的是什么? 为什么Android Studio中包含Gradle?


简答

Gradle是一个构建系统。

长答案

在Android Studio之前,您正在使用Eclipse进行开发,而且很可能,您不知道如何在没有Eclipse的情况下构建Android APK。

您可以在命令行上执行此操作,但您必须了解每个工具(dx,aapt)在SDK中执行的操作。 Eclipse通过给我们自己的构建系统从这些低级但重要的基本细节中拯救了我们。

现在,你有没有想过为什么res文件夹和你的src文件夹在同一个目录下?

这是构建系统进入图片的地方。 构建系统会自动获取所有源文件( .java.xml ),然后应用相应的工具(例如获取java类文件并将它们转换为dex文件),并将它们全部组合成一个压缩文件,即我们喜爱的APK。

这个构建系统使用了一些约定:一个例子是指定包含源文件的目录(在Eclipse中它是src文件夹)或资源文件(在Eclipse中它是res文件夹)。

现在,为了使所有这些任务自动化,必须有一个脚本; 你可以在linux中使用shell脚本编写你自己的编译系统,或者在windows中编写批处理文件语法。 得到它了?

Gradle是另一个构建系统 ,可以从其他构建系统中获取最佳功能并将它们合并为一个。 基于其缺点而改进。 它是基于JVM的构建系统 ,这意味着您可以使用Java Studio编写自己的脚本,Android Studio使用该脚本。

Gradle的一个很酷的事情是它是一个基于插件的系统 。 这意味着如果你有自己的编程语言,并且想从源代码中自动完成构建一些包的输出(像Java的JAR那样的输出),那么你可以用Java或者Groovy(或者Kotlin,见这里)编写一个完整的插件,分发给世界其他地方。

为什么Google使用它?

谷歌看到了市场上最先进的构建系统之一,并意识到你可以编写自己的脚本,几乎没有学习曲线,也没有学习Groovy或任何其他新语言。 所以他们为Gradle编写了Android插件。

您必须在项目中看到build.gradle文件。 这就是您可以编写脚本来自动执行任务的地方。 您在这些文件中看到的代码是Groovy代码。 如果你写了System.out.println("Hello Gradle!"); 那么它将在您的控制台上打印。

你可以在构建脚本中做什么?

一个简单的例子是,在实际构建过程发生之前,您必须将某个文件从一个目录复制到另一个目录。 Gradle构建脚本可以做到这一点。


这是Google希望用于Android的新构建工具。 由于它比蚂蚁更具可扩展性和实用性,因此被使用。 它旨在增强开发人员的体验。

您可以在这里查看来自Android开发团队的Xavier Ducrohet在Google I / O上的演讲。

Xavier和Tor Norbye也在Android Studio上进行了另一场演讲,同样在Google I / O期间。


1 - Gradle背景信息。

2 - Gradle概念。

3 - 初始化阶段。

4 - 初始化阶段(续)。

5 - 什么是Gradle

6 - 配置阶段。

摇篮

在这里输入图像描述

在这里输入图像描述

在这里输入图像描述

在这里输入图像描述

在这里输入图像描述

看到这个链接

链接地址: http://www.djcxy.com/p/16229.html

上一篇: What is Gradle in Android Studio?

下一篇: What's "tools:context" in Android layout files?