xposed方面的备忘录

新手学堂021

xposed方面的备忘录,第1张

Xposed 摘要
验证Xposed模块自身是否被启用
Java反射机制、动态代理(过滤器Filter和拦截器Interceptor)

xposedAPI文档: https://apixposedinfo/reference/packageshtml

Found Xposed class 'de/robv/android/xposed/XposedBridge', now initializing
03-28 11:23:39569 I/Xposed ( 1377): Loading modules from /data/app/comyoungharewechatWebAuto-1/baseapk
03-28 11:23:39571 I/Xposed ( 1377): Loading class youngharecomwechatWebAutoxposedXMoudleWechatApp
03-28 11:23:39572 E/Xposed ( 1377): Failed to load class youngharecomwechatWebAutoxposedXMoudleWechatApp
03-28 11:23:39572 E/Xposed ( 1377): javalangClassNotFoundException: Didn't find class "youngharecomwechatWebAutoxposedXMoudleWechatApp" on path: DexPathList[[zip file "/data/app/comyoungharewechatWebAuto-1/baseapk"],nativeLibraryDirectories=[/vendor/lib, /system/lib]]

参考解决办法
Xposed Not Loading my module, ClassNotFoundException

直接用jadx打开apk,查看加的是哪种壳,寻找对应的函数,类似attachBaseContext这样的方法
参考链接: https://wwwcnblogscom/mangM/p/11055384html

xposed 的编译

XposedTools: 编译xposed的相关脚本,与工具。
xposedbridge: xposed 框架的java层,
XposedInstaller: xposed 框架的独立apk,用于管理基于xposed的相关插件
Xposed : 修改之后的app_process,用于替代系统的 app_process
android_art: 对art_methods 进行改造后的art,用于替代系统的 art。

1、如何Hook静态变量
2、如何Hook构造方法
3、如何Hook复杂参数的方法
4、如何替换函数执行内容
5、如何Hook内部类中的函数
6、如何Hook匿名类的函数
7、如何获取调用对象去调用函数,或者新建新建示例去调用方法

利用反射对修饰符为final的成员变量进行修改

遍历获取自定义数组变量

修改下面文件中的apk路径