📌 第一部分:Gradle 基础

🎯 目标: 深入理解 Gradle 配置文件、构建流程、依赖管理,以及 Gradle 生命周期,为后续 Gradle 插件开发打下坚实基础。
1️⃣ 《Gradle 配置文件详解:build.gradle、gradle.properties、settings.gradle》
  • Gradle 配置文件的作用
  • settings.gradle 与 build.gradle 解析
  • gradle.properties 的全局配置与优化
2️⃣ 《Gradle 生命周期详解:从初始化到执行的完整流程》
  • Gradle 配置阶段(Configuration Phase)
  • Gradle 执行阶段(Execution Phase)
  • Gradle 任务依赖解析
  • Gradle 构建优化思考
3️⃣ 《Gradle 基础语法与 Groovy/Kotlin DSL 语法详解》
  • Groovy & Kotlin DSL 语法解析
  • build.gradle vs build.gradle.kts
  • Task、Action、Property、Dependency 详解
4️⃣ 《Gradle 构建流程深度解析》
  • Gradle 生命周期
  • Task 执行流程
  • Gradle 依赖解析 过程
  • settings.gradle & build.gradle 的作用

📌 第二部分:Gradle 进阶

🎯 目标: 掌握 Gradle 插件机制、插件开发技巧、任务优化,并深入研究 Gradle 扩展系统 和 插件调试。
1️⃣ 《Gradle 插件体系概览:脚本插件、buildSrc、独立项目插件》
  • 脚本插件(Script Plugin)
  • buildSrc 插件
  • 独立 Gradle 插件(Standalone Project Plugin)
  • 插件应用方式(apply vs plugins DSL)
2️⃣ 《Gradle 插件机制:从官方插件到自定义插件》
  • Gradle 官方插件
  • 如何开发自定义 Gradle 插件
  • apply plugin vs pluginManagement
  • 插件的生命周期
3️⃣ 《Gradle 依赖管理详解:版本对齐与 BOM(Bill of Materials)》
  • Gradle 依赖管理机制
  • 动态依赖 vs 硬编码版本
  • BOM 机制(Bill of Materials)
  • api、implementation、compileOnly、runtimeOnly 区别
4️⃣ 《Gradle 任务优化:增量构建、缓存与并行编译》
  • Task 输入输出(Input/Output)
  • UP-TO-DATE 机制
  • Gradle Build Cache
  • Gradle 并行执行优化
5️⃣ 《Gradle 扩展机制(Extension):如何自定义 Gradle DSL》
  • Gradle 扩展的作用
  • extension 机制详解
  • 如何自定义 DSL
  • 结合 Kotlin DSL 实现更优雅的插件 API
6️⃣ 《Gradle 插件调试指南:高效调试 Gradle 插件》
  • Gradle 插件 日志系统
  • 如何在 IDE(如 IntelliJ)中调试 Gradle 插件
  • gradle --debug、gradle --scan 的使用
  • Remote Debug Gradle 插件

📌 第三部分:Gradle 插件开发实战

🎯 目标: 结合 Gradle Transform API 与 ASM 字节码插桩,开发 Android 全埋点插件,并适配 AGP 7+ 的新 API。
1️⃣ 《Gradle Transform API 入门:插件开发的核心》
  • Transform API 介绍
  • 如何使用 Transform API
  • 代码示例:编写基础 Transform 插件
2️⃣ 《Gradle + ASM:Android 全埋点插件开发实战(1)—— 插件基础》
  • 什么是 ASM?ASM 在 Android 开发中的作用
  • Gradle 插件与 Transform API 结合
  • 创建第一个 ASM 插件
3️⃣ 《Gradle + ASM:Android 全埋点插件开发实战(2)—— 字节码插桩》
  • ClassVisitor、MethodVisitor 详解
  • 修改字节码逻辑
  • 如何 Hook Android 方法
4️⃣ 《Gradle + ASM:Android 全埋点插件开发实战(3)—— Transform 模版与最佳实践》
  • 如何封装通用 Transform 模版
  • 如何处理多模块项目
  • 优化 Transform 执行效率
5️⃣ 《Gradle + ASM:Android 全埋点插件开发实战(4)—— 适配 AGP 7+ 新 API》
  • Transform API 在 AGP 7+ 中的废弃
  • 如何使用 AGP 7+ 新的字节码处理 API
  • 完整迁移指南
6️⃣ 《Gradle + ASM:Android 全埋点插件开发实战(5)—— 实现完整 AOP 方案》
  • 全埋点方案设计
  • 如何 Hook onClick()、onResume()
  • 生成日志埋点
7️⃣ 《Gradle + ASM:Android 全埋点插件开发实战(6)—— 代码优化与性能分析》
  • 优化 Transform 执行性能
  • 如何提高字节码插桩的效率
  • 自动化测试与 Benchmark

📌 第四部分:Gradle 高级优化

🎯 目标: 结合 Gradle 性能优化 与 自动化 CI/CD,提高构建效率,优化 Gradle 构建速度。
1️⃣ 《Gradle 构建性能优化:如何加快 Android 项目编译速度?》
  • Gradle 缓存 & 并行构建
  • 如何优化多模块编译
  • 如何减少冗余 Task 执行
2️⃣ 《Gradle + CI/CD:自动化构建 Android 项目》
  • GitHub Actions + Gradle 自动化构建
  • Jenkins + Gradle 持续集成
  • 如何自动化发布 APK / AAB

📌 第五部分:前沿探索

🎯 目标: 探索最新 Gradle 版本、新特性,结合 AGP(Android Gradle Plugin) 进行深入研究。
1️⃣ 《AGP(Android Gradle Plugin)深度解析:原理与优化》
  • AGP 的作用
  • AGP 版本更新
  • 如何与 Gradle 插件配合
2️⃣ 《Gradle 8.x 新特性:Kotlin DSL、虚拟线程、构建优化》
  • Kotlin DSL 取代 Groovy
  • 构建 API 改进
  • 增量编译新特性
 
Android 埋点监控方案整理Flomo卡片笔记——使用原则