==
通过gradle的插件完成android的插桩入门
- 首先学习编写一个简单的gradle插件
- 通过composing builds 方法引入这个插件方便调试
- 自己实现Transform方法来实现自己的插桩功能
- 通过Asm outline插件完成学习插桩代码
参考
本文中的代码通过参考以下的文章和仓库来学习
- [AndroidAutoTrack](()
- [Hunter](()
- [gradle脚本调试](()
- [ASM插入方法](()
完成一个简单的插件
本文设计到的代码都在这个项目中的AsmPlugin目录下[代码](()
- 首先创建一个工程,这里是AsmPlugin,我是在PluginDemo的工程下。因为我希望后面调试的时候,可以很容易的把这俩工程关联起来
- AsmPlugin是一个插件工程,是新建了一个android工程,然后根据AndroidAutoTrack里面的插件模板修改相应的build.gradle文件来完成的
- 在AsmPlugin中建立比较简单的插件模板,我引入了AndroidAutoTrack中的基类插件库,然后自己增加一个简单的Demo
- 关联这个插件到PluginDemo中。
建立一个插件工程
我是建立一个普通的的Android工程,修改相应的文件完成插件的改造, 新建一个空的Android模块,这里是SimplePlugin 修改模块中的build.gradle文件 插件的gradle文件如下
apply plugin: ‘groovy’
apply plugin: ‘kotlin’