安卓逆向学习之HOOK startActivity

本文详细讲解了如何HOOK安卓应用的startActivity方法,包括HOOK的概念、底层代码分析及实例操作步骤。通过代理启动Activity,实现日志监控或参数修改,涉及反射和静态代理等技术。
摘要由CSDN通过智能技术生成

之前很多同学叫要怎么hook startactivity 今天小编就来给大家讲解一下,图文的方式可以有点难看懂,不过小编会尽量写详细一点,当然小编也会有地方出错,希望大家可以多多指点一下。

首先我们先去了解一下知识点。

1.HOOK startActivity的概念。

2.分析startActivity底层代码。

3.实例 hook startactivity的用法

HOOK startActivity的概念

一个活动界面启动另一个活动界面,需要打印相关的日志内容,就需要我们的start Activity,我们就要去hook。

分析startActivity底层代码

startActivity的实现代码是由底层完成的,代理startActivity就必须找到他的最终启动去实现跳转的逻辑。所以呢我们要去分析startActivity的底层代码。

那如何使用HOOK startActivity呢?
接下来就给大家介绍介绍,请大家细细听来。

实例 hook startactivity的用法

1.先定义两个活动界面,完成跳转。
2.找到最终代理的地方来代理这个 start activity。
3.声明一个tag以及代理的类。
4.定义 ActivityThread里面原始的 Instrumentation对象。
5.定义原始方法里面的正真启动activity的方法。
6.打印一些activity启动前后的日志信息,也可以修改相应的参数信息。
7.调用方法是否在底层,是否需要反射调用,以及设置可见。
8.进行代理在APPlication程序的入口点来写代码。
9.在APPlication定义一个线程和其他一些字符串。
10.获取当前ActivityThread对象,然后进行调用。
11.拿到在ActivityThread类里面最原始的mlnstrumentation对象。
12.构建我们的代理对象。
13.通过反射&

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值