Gradle系列之大锅菜汇总

😄作者简介: 小曾同学.com,一个致力于测试开发的博主⛽️,主要职责:测试开发、CI/CD
如果文章知识点有错误的地方,还请大家指正,让我们一起学习,一起进步。
😊 座右铭:不想当开发的测试,不是一个好测试✌️。
如果感觉博主的文章还不错的话,还请点赞、收藏哦!👍

我们部门有一个比较好的传统——每周分享,最近要轮到我了,我选择的分享内容是Gradle,所以花了两周的时间稍微系统的学习了下Gradle相关知识,当然后续也会把详细的知识点补上。(本篇是栏目介绍


收获

当给研发做CI时,研发经常会抛出一些命令,比如:./geadlew app:upd:assemble,为了了解这些都表示什么含义,所以就花时间系统的去了解Gradle相关的知识。如果你问我系统学习新技术的心得体会是什么,想必是豁然开朗的无知。豁然开朗表示理解了之前使用这个工具的含义,无知表示随着深入理解的越多,越感觉还有很多东西需要学习。后续也会把小编在学习的过程中遇到的问题,分享出来,防止大家踩坑。在本栏目中,您将学习到以下内容 (具体内容将在后续文章中体现)

Gradle系列文章链接
Gradle是定义及基本使用https://blog.csdn.net/weixin_42182599/article/details/134617220?spm=1001.2014.3001.5501
Gradle中build.gradle详细介绍
Gradle Project与Gradle调度
Gradle Task 创建与执行
Gradle生成APK正式签名
Gradle 如何多渠道打包

成果

学习这些内容之后,就会了解 Android Studio 对应的 Android 项目中对应的两个build.gradle脚本文件分别表达的含义,也会了解 Android闭包buildTypes 闭包的概念。知道怎么自定义APK文件名,怎么通过 Gradle 生成正式签名。

apply plugin: 'com.android.application'
android {compileSdkVersion 30defaultConfig {applicationId "com.qiniu.droid.rtc.demo"minSdkVersion 18targetSdkVersion 30versionCode 43versionName "5.2.3"buildConfigField "long", "BUILD_TIMESTAMP", System.currentTimeMillis() + "L"}buildTypes {release {minifyEnabled falseproguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'}}
}

也会了解到 Android Studio 点击Run背后发生了什么?,实际执行了哪些task,这些task有怎样的依赖的关系等等内容。

在这里插入图片描述
另外,你会了解到在Gradle中每个待编译的工程称为Project,每个Project在构建时都包含一系列的Task,而每个task代表了构建过程中的一个原子性操作,比如编译、打包、发布等这些操作。你也会了解多渠道打包的概念及实战等等一系列内容。

让我们共同保持好奇心,开启我们新的篇章。

迎接2024年,愿我们笑对人生,积极向上,成为更好的自己!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/316378.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【程序员的自我修养08】精华!!!动态库的由来及其实现原理

绪论 大家好,欢迎来到【程序员的自我修养】专栏。正如其专栏名,本专栏主要分享学习《程序员的自我修养——链接、装载与库》的知识点以及结合自己的工作经验以及思考。编译原理相关知识本身就比较有难度,我会尽自己最大的努力,争…

opencv003图像裁剪(应用NumPy矩阵的切片)

这一部分相对于马上要学习的二值化是要更更更简单一些的,只需三行,便能在opencv上裁剪图像啦(顺便云吸猫,太可爱了!) 出处见水印! 1、复习图像的显示 前几天期末考试,太久没有看…

QML 中自定义虚拟键盘

作者:billy 版权声明:著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处 前言 我们知道 Qt 中虚拟键盘模块遵循的是 GPL 协议,是不可用于商业发布的。如果项目中使用了 Qt 自带的虚拟键盘&#xff…

maven、springboot项目编译打包本地jar、第三方jar包

0. 引言 一般我们在maven项目中都是通过引入pom坐标的形式来引入第三方jar包,但某些场景下,第三方是直接提供的jar包文件,这就需要我们从本地引入第三方包并进行打包。所以我们今天来看下如何进行本地引入第三方包操作 1. 步骤 1、在项目下…

JVM是如何基于虚拟机栈运行的

众所周知:JVM执行Java代码是靠执行引擎实现的。执行引擎有两套解释器:字节码解释器、模板解释器。字节码解释器比较简单,不多说,看图。本篇文章咱们讨论模板解释器执行Java代码的底层原理。 早些年研究模板解释器看到R大用汇编写的…

你知道vue中key的原理吗?说说你对它的理解

一、Key是什么 开始之前&#xff0c;我们先还原两个实际工作场景 当我们在使用v-for时&#xff0c;需要给单元加上key <ul><li v-for"item in items" :key"item.id">...</li> </ul>用new Date()生成的时间戳作为key&#xff0c…

数据中心网络架构

参考&#xff1a; 一文读懂胖树 数据中心网络架构VL2详解 数据中心网络拓扑设计目标 总体目标 业务可以部署在任意的服务器上可以根据需要动态扩展或者缩小服务器规模 网络角度 均衡负载且高性能&#xff1a;服务器之间的性能仅受限于服务器网卡&#xff0c;而不是链路性能…

《Ensemble deep learning: A review》阅读笔记

论文标题 《Ensemble deep learning: A review》 集成深度学习&#xff1a; 综述 作者 M.A. Ganaie 和 Minghui Hu 来自印度理工学院印多尔分校数学系和南洋理工大学电气与电子工程学院 本文写的大而全。 初读 摘要 集成学习思想&#xff1a; 结合几个单独的模型以获得…

【GitHub】ssh: connect to host github.com port 22: Connection refused

本地使用git上传GitHub仓库时发现的一个报错&#xff0c;以为是本机连不上github了&#xff0c;ping过后发现能够正常访问&#xff0c;于是上网找到了一个很完美的解决方案 原因&#xff1a;22端口被占用或被防火墙屏蔽 解决方法&#xff1a;切换GitHub的443端口 1.首先找到…

【数据结构】手撕排序(排序的概念及意义、直接插入和希尔排序的实现及分析)

目录 一、排序的概念及其运用 1.1排序的概念 1.2排序运用 1.3 常见的排序算法 二、插入排序 2.1基本思想&#xff1a; 2.2直接插入排序&#xff1a; 2.3步骤&#xff1a; 2.4直接插入排序的实现 三、希尔排序( 缩小增量排序 ) 3.1希尔排序的发展历史 3.2 希尔…

跟着cherno手搓游戏引擎【2】:日志系统spdlog和premake的使用

配置&#xff1a; 日志库文件github&#xff1a; GitHub - gabime/spdlog: Fast C logging library. 新建vendor文件夹 将下载好的spdlog放入 配置YOTOEngine的附加包含目录&#xff1a; 配置Sandbox的附加包含目录&#xff1a; 包装spdlog&#xff1a; 在YOTO文件夹下创建…