function test(){Java.perform(function () {/* private static String flag; 静态字段private int amount; 实例字段private String currency; */var Money=Java.use("com.dudu.hook.Money");//静态字段的操作console.log(Money.flag.value);Money.flag.value="静态字段的修改";console.log(Money.flag.value);//实例方法的主动调用,首先需要实例一个对象,然后实例化出来的对象再点上方法即可var Money_1 = Money.$new("构造函数所需要传入的参数", 1888);console.log("实例字段的打印 - 》 "+Money_1.currency.value);//实例方法 获取已有对象 就是在内存中搜索已经创建好的对象Java.choose("com.dudu.hook.Money", {onMatch: function (obj) {console.log("Java.choose - 》》》》 "+obj.currency.value)},onComplete: function () {console.log("内存搜索已完成!!!!")}})// Java.choose有一个特别的注意点//当类里面 字段名和方法名一样 需要加下划线前缀Java.choose("com.xiaojianbang.hook.BankCard", {onMatch: function (obj) {console.log("Java.choose _accountName- 》》》》 "+obj._accountName.value)},onComplete: function () {console.log("_accountName内存搜索已完成!!!!")}})})};setImmediate(function(){setTimeout(test(), 5000);});
// Java.choose特别的注意点
//当类里面 字段名和方法名一样 需要加下划线前缀
