[TOC]
優(yōu)質(zhì)文章:
字節(jié)碼格式
class格式: Chapter 4. The class File Format
字節(jié)碼指令
JVM指令集:Chapter 6. The Java Virtual Machine Instruction Set
局部變量表和操作數(shù)圖解:
拉勾教育-Android工程師進(jìn)階34講-第01講:程序運(yùn)行時(shí),內(nèi)存到底是如何進(jìn)行分配的偶宫?
gradle
Gradle插件版本和Gradle sdk版本的對(duì)應(yīng)關(guān)系
現(xiàn)在準(zhǔn)備好告別Transform了嗎肛捍? | 擁抱AGP7.0
ASM
Android 無(wú)所不能的 hook,讓應(yīng)用不再崩潰
Android 中看似高大上的字節(jié)碼修改漏益,這樣學(xué)就對(duì)了鳍征!
ASM 插樁采集方法入?yún)⒏榱希鰠⒓昂臅r(shí)信息
ps: 核心
①采集方法入?yún)ⅲ植孔兞勘碇械男畔⒈从伲缓筠D(zhuǎn)發(fā)出去
②kotlin編寫gradle腳本
③對(duì)應(yīng)項(xiàng)目shenzhen2017/Android-ASM
④gradle插件版本7.2
ClassVisitor 和 ClassNode配合使用
How to convert ClassVisitor to ClassNode in ASM java
ASM 4 教程中的示例代碼
優(yōu)質(zhì)項(xiàng)目:
lenebf/GradlePluginTutorial
說(shuō)明:
①gradle插件發(fā)布到本地倉(cāng)庫(kù)配置
②基于'com.android.tools.build:gradle:4.1.0'
;
③plugins + id等api的使用柒竞,publishing的使用
一個(gè)簡(jiǎn)單的click插件:
bjsdm/TestCode
ps:
①基于"com.android.tools.build:gradle:4.0.0"
②舊版的api使用,apply plugin
播聪、uploadArchives
等
③發(fā)布到本地倉(cāng)庫(kù)
didi/booster
對(duì)AGP進(jìn)行了不同版本間的適配
bytedance/ByteX
ByteX是一個(gè)基于gradle transform api和ASM的字節(jié)碼插件平臺(tái)(或許朽基,你可以把它當(dāng)成一個(gè)有無(wú)限個(gè)插頭的插座?)离陶。