TU
图中InnerStructure这个类是内部类,针对内部类的hook如下:
Java.choose("com.xiaojianbang.hook.Wallet$InnerStructure", {onMatch: function (obj) {console.log("Java.choose Wallet$InnerStructure: ", obj.bankCardsList.value);}, onComplete: function () {}});
内部类的访问方法:外部类+$+内部类名 即可
匿名内部类的hook
new Money("欧元", 200) {public String getInfo() {return getCurrency() + " " + getAmount() + " 这是匿名内部类";}}.getInfo()
本来已经存在了Money,现在针对Money下面的getInfo方法的重写
针对匿名内部类的hook如下:
var Money = Java.use("com.dudu.app.MainActivity$1");//这个类中第一个匿名内部类就用$1;第二个就用$2;以此类推;Money.getInfo.implementation=function () {var ddd= this.getInfo();console.log(ddd)return ddd;}
