Leifzhang/AndroidAutoTrack

请教一个Asm插装的问题

ethanhua opened this issue · 3 comments

你的库很赞
比如我想要替换一行代码如下:

原始代码: A a = new A(param1,param2,....),

替换成: A a = B.newC(params1,param2,....) , 其中B中的newC方法是静态方法,class C extends A

使用asm core api该如何做?

core api 就用classvisitor的 method visitor 逐行替换就好了,因为不涉及的参数变更 所以只要进行匹配就行了 可以参考类似privacy那部分替换逻辑

原始代码: A a = new A(param1,param2,....),

替换成: A a = B.newC(params1,param2,....) , 其中B中的newC方法是静态方法,class C extends A, 如果是这种场景该怎么替换 有具体的例子可以参考吗?