【Gradle】Android Studio中的Gradle入门

基础知识

Gradle 本身并不知道如何编译 APK 文件,因为 Gradle 实际上是一个通用的构建工具。它不限于构建 Android 应用程序。在 Gradle 的 GitHub 仓库中,它被描述为:

…构建工具,着重于构建自动化和支持多语言开发。如果您在任何平台上构建、测试、发布和部署软件,Gradle 提供了一个灵活的模型,可以支持从编译和打包代码到发布的整个开发生命周期

Gradle 本身实际上并不能做太多。所有有用的功能都来自丰富的插件生态系统。把你添加到 Android 应用程序中的所有第三方库视为插件。您可以使用这些插件来扩展应用程序的功能,就像 Gradle 使用插件来扩展自己的功能一样

Android Plugin for Gradle

Android Plugin for Gradle 是一个使 Gradle 能够将您的代码编译成用你的密钥签名 APK 文件的插件,甚至将 APK 安装到你的模拟器或测试设备上。这个插件驱动你的整个构建系统

没有它,Gradle 就无法知道如何对代码做任何事情。这个插件是 Android Studio 和 Gradle 之间的魔法链。当你在 Android Studio 中启动一个全新的项目时,会获得带有“gradle”文件名的文件,所有带有“ gradle ”文字的文件都用于为我们的 Android 项目配置 Gradle 。里面存在多个文件,因为它们都有不同的用途

Gradle Wrapper

gradle-wrapper.properties 文件有一个简单的目的:决定在构建项目时使用哪个 Gradle 版本。它将随后会自动为你下载并保存该版本的 Gradle

在这里插入图片描述

settings.gradle

如果你将另一个模块添加到你的工程中,Android Studio 将会自动将其添加到这个文件中
在这里插入图片描述

build.gradle

从 Gradle 的角度来看,我们的工程被认为是你拥有一个根项目以及一个到多个子工程。从 Android 开发者的角度来看,这些子工程被称为 module(模块)

这就是为什么你会看到两个build.gradle 文件的原因。一个是给根项目的,另一个是给伴随着你的项目的 app 模块的。让我们先看看你的根项目的格式吧

在这里插入图片描述
这个完整的buildscript{}块用于告知 Gradle 脚本本身,关于编译本项目需要的那些

我们告知 Gradle 我们需要到 google() Maven 代码库和 jcenter() 代码库中检索一些事项

我们在这个 buildscript中声明了 Android Gradle 插件的依赖性。“3.3.1” 表示要使用的插件版本

正如名字所暗示的,allprojects{} 块被用于通知 Gradle 关于所有需要编译的子项目,并使用这个代码库集合来解决所有需要的依赖项

下面我们看一下app 模块的build.gradle
在这里插入图片描述

这里就是你添加 Gradle 所依赖的第三方库的位置。注意在你的 app 的 build.gradle 中并没有 repositories{} 块。既然我们已经在根项目的 allprojects{} 块中声明了,这里就没有必要了

Gradle 任务

任务基本上就是 Gradle 可以在构建触发时执行的事情。Android Studio 是不知道如何编译你的代码的。这是因为单击 Android Studio 中的大绿色播放按钮将触发 Gradle 执行特定任务

打开Gradle console,也就是如下图所示的位置
在这里插入图片描述
当我们点击AS的绿色运行按钮时, 一堆命令会出现,但我们只关心顶部的命令:

Executing tasks: [:app:assembleDebug]

我们刚刚告诉 Gradle 执行 assembleDebug 任务。 我们可以通过命令行完成同样的事情。 点击左下角的终端标签Terminal,运行这个命令:

gradlew assembleDebug

我们使用gradlew命令的时候,会根据gradle-wrapper.properties文件来使用对应的gradle进行构建,没有则会下载

assembleDebug 是你刚刚要求它运行的任务的名称

我们再来运行最后一个命令gradlew tasks
这个命令将列出 Gradle 目前在这个项目中所知道的所有任务,并提供每个任务的简短描述

其实和点击 Android Studio 右上角的 Gradle 标签是一样的效果
在这里插入图片描述在这里双击 assembleDebug ,就可以做到与刚刚在命令行上做的一样的事情,并且和播放按钮做同样的事情

AS中查看gradle版本

File-Project Structure
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值