静态代理 | 动态代理 ) 中 , 对 Hook 技术进行了简要介绍 , Android 中的 Hook 技术主要是通过
反射
代理模式 ( 动态代理 / 静态代理 )
实现的 ;
之所以使用 Hook..., 一般是在原有调用的基础上 , 不影响原来功能的前提下 , 注入新的逻辑 ;
二、Hook 按钮点击事件
----
1、按钮点击事件
获取布局文件的按钮 , 并为其设置点击事件 , 该点击事件 public...void onClick(View v) 就是需要 Hook 的方法 , 我们使用 Hook 技术 , 使用动态代理 , 替换掉该 onClick 方法 , 注入额外的业务逻辑 ;
// 获取按钮 ,...}
}
5、反射 ListenerInfo 并设置新的 OnClickListener 监听器
获取 ListenerInfo 中的 public OnClickListener mOnClickListener...View.OnClickListener 监听器 , 在该监听器的 onClick 方法中 , 调用之前获取的 监听器的 onClick 方法 , 此外还可以在该点击方法前后注入开发者自定义的业务逻辑