Gradle系列之大锅菜汇总

2024-01-03 07:35:10

😄作者简介: 小曾同学.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 30
    defaultConfig {
        applicationId "com.qiniu.droid.rtc.demo"
        minSdkVersion 18
        targetSdkVersion 30
        versionCode 43
        versionName "5.2.3"
        buildConfigField "long", "BUILD_TIMESTAMP", System.currentTimeMillis() + "L"
    }

    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

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

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

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

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

文章来源:https://blog.csdn.net/weixin_42182599/article/details/135344676
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。