入门
去AS里面新建一个NoActivity项目,最好把minimum版本调小
<meta-data
android:name="xposedmodule"
android:value="true" />
<meta-data
android:name="xposeddescription"
android:value="这是一个xposed demo" />
<meta-data
android:name="xposedminversion"
android:value="89" />
把模块导入libs
去build.gradle导入框架
去jadx找需要的method
去工程建一个类继承框架类
在src下建立一个assets,在文件夹里面简历一个xposed_init
点击编译,把编译后的apk安装到xposed的机子
常见方法
大神帖子的链接https://www.52pojie.cn/thread-851991-1-1.html
callStaticMethod
执行静态方法,源码中有一个方法,我们可以直接调用它
callMethod
执行某个类里的方法,如果有个方法是查询数据库的,你可以得到类的实例后再使用这个方法来执行自己写的语句
findField
查找类中的变量
findClassIfExists
未找到时则返回null,不会有异常
findClass
查找类,因为HookMethod时,参数可能是应用内自定义的类,所以需要这个方法来找到,在未找到时抛出异常
参数(完整类名String,classLoader 应用的类加载器
findAndHookMethod
查找并拦截方法的执行,只需要找到类名,方法名,函数名,参数类型就可以使用
该方法使用最多,但大多局限于改参数与改结果,在真正Hook大型应用中需要追根溯源,结合其他方法使用