Xposed框架

本文详细介绍了Xposed框架的工作原理,包括如何通过替换/app_process控制Zygote进程,以及XposedBridge.jar在其中的作用。Xposed允许在不修改APK的情况下影响程序运行,提供hook API。文章还探讨了Xposed模块的开发配置,如在AndroidManifest.xml中的设置,以及常用的接口方法,如handleHookedMethod和findAndHookedMethod。
摘要由CSDN通过智能技术生成

有关Xposed框架的说明有一大堆,这篇blog写得比较详细。最近也在利用Xposed框架开发基于短信的应用,这里进行总结一下。
Xposed框架是是GitHUB上rovo89设计的一个针对Android平台的动态劫持项目。通过替换/system/bin/app_process程序控制zygote进程,使得app_process在启动过程中会加载XposedBridge.jar这个jar包,从而完成对Zygote进程及其创建的Dalvik虚拟机的劫持。与采取传统的Inhook方式相比,Xposed在开机的时候完成对所有的Hook Function的劫持,在原Function执行的前后加上自定义代码。
因为Xposed工作原理是在/system/bin目录下替换文件,在install的时候需要root权限,但是运行时不需要root权限。此外,需要在Android 4.0以上版本的机器中才能运行。
Xposed的部分核心源码在github上是开源的,主要的模块和包如下:

  1. XposedBridge.jar
    Xposed提供的jar文件,负责在native层和framework层进行交互,Android系统的/system/bin/app_process进程启动过程中会加载该jar包,Xposed框架所有Modules的开发与运行都是基于该jar包的支持

  2. Xposed
    Xposed框架中的C++部分,主要用来替换app_process文件,同时为XposedBridge提供JNI方法

  3. XposedInstall

  • 4
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值