Xposed学习-基础篇
Xposed框架的基本介绍
Xposed框架是一个可以在不修改app源码的情况下完成对app修改,这个框架就好像一个钩子一样可以勾到你需要修改的方法进行你想要的修改。Xposed框架的原理是通过替换系统中/system/bin/app_precesss从而能够控制zygote,因为在android系统中所有的应用程序的进程进程以及系统服务程序进程都是由Zygote进程孕育(fork)出来的,替换掉app_precesss之后系统加载的就是Xposed framework的一个jar文件即XposedBridge.jar,这样就可以实现不修改app源码情况下完成对app修改。
安装Xposed
可以去Xposed中文字搜索下载xposed,https://xposed.appkg.com/,
- 安装xposed软件要求手机必须是root
- 安装完xposed软件之后还需要安装对应的version,然后重启手机。
- 重启手机之后xposed显示已激活就是已经安装完成。
Xposed模块的编写
导入jar包:xposed模块的编写我用的是studio来写,首先需要下载好xposed的jar包导入到项目中,在项目java目录下创建assets文件夹并在该文件夹中创建file类型文件命名必须是"xposed_init",,这个文件写入的是hoo文件的路径,也就是模块入口的路径,XposedBridge加载,模块的时候会根据该路径找到hook入口点。
配置文件:gradle中依赖的添加必须是compileOnly 否则模块将不会生效。还需要在Maniffest中配置一些基本信息,框架的版本,模块的描述,做完以上这些就可以开始模块的编写了。
<meta-data
android:name="xposedmodule"
android:value="true" />
<meta-data
android:name="xposeddescription"
android:value=<