transform + asm资料

[TOC]

优质文章:

字节码格式

class格式: Chapter 4. The class File Format

字节码指令

JVM指令集:Chapter 6. The Java Virtual Machine Instruction Set

拉勾-一文看懂Java字节码

局部变量表和操作数图解:
拉勾教育-Android工程师进阶34讲-第01讲:程序运行时,内存到底是如何进行分配的?

McoyJiang/LagouAndroidShare

gradle

Gradle插件版本和Gradle sdk版本的对应关系

现在准备好告别Transform了吗? | 拥抱AGP7.0

ASM

Android-ASM 插桩你所需要知道的基础

ASM 快速入门

Android 无所不能的 hook,让应用不再崩溃

Android 中看似高大上的字节码修改,这样学就对了!

ASM 插桩采集方法入参,出参及耗时信息
ps: 核心
①采集方法入参,局部变量表中的信息,然后转发出去
②kotlin编写gradle脚本
③对应项目shenzhen2017/Android-ASM
④gradle插件版本7.2

ClassVisitor 和 ClassNode配合使用

How to convert ClassVisitor to ClassNode in ASM java

ASM 4 教程中的示例代码

dengshiwei/asm-module

优质项目:

lenebf/GradlePluginTutorial
说明:
①gradle插件发布到本地仓库配置
②基于'com.android.tools.build:gradle:4.1.0';
③plugins + id等api的使用,publishing的使用

一个简单的click插件:
bjsdm/TestCode
ps:
①基于"com.android.tools.build:gradle:4.0.0"
②旧版的api使用,apply pluginuploadArchives
③发布到本地仓库

didi/booster
对AGP进行了不同版本间的适配

bytedance/ByteX
ByteX是一个基于gradle transform api和ASM的字节码插件平台(或许,你可以把它当成一个有无限个插头的插座?)。

你可能感兴趣的:(transform + asm资料)