在使用 Xposed的时候,发现有些方法不能Hook,还查找不到原因,这个对我造成很大的困扰.
- 问题1
对一个类中的两个方法进行试验,其中一个有方法体,一个没有方法体
结果其中有方法体的可以hook,没有的不可以hook.通过总结发现了这个问题.
重要的是,Hook的方法不能没有方法体,或者直接返回参数.
- 问题2
找不到类的方法,无法直观的提示
可以在Hook的地方加上try catch语句来进行,这样错误很明显的展示出来.
try{
} catch (Throwable v0) {
}- 接口显示
可以用接口来赋值,在实现的地方进行hook
当问题出现的时候,不要怀疑框架,能hook其它的代码,就是你写的代码有问题,
仔细检查!!!
他不能Hook抽象类和接口,考虑如何防止被别人的代码Hook的话,继承和抽象都可以写!!!