Hook简介:
Hook就是钩子,在安卓中,就是在事件传送到终点前截获并监控事件的传输,像个钩子勾上事件一样,并且能够在勾上事件时,处理一些自己特定的事件。
Cydia Substrate的官网定义:The powerful code modification platform behind Cydia.
Cydia Substrate是一个代码修改平台,它可以修改任何主进程的代码,不管是用Java还是C/C++(native代码)编写的。
注:Cydia Substrate框架对于inline Hook的操作目前还是存在一些bug,使用的时候可能会出现崩溃的现象,部分使用了国内定制的ROM的设备在使用Cydia Substrate框架时会造成设备无法重新启动或无法Hook的现象。
使用Cydia Substrate的步骤:
第一步:
安装Cydia Substrate框架Android本地服务
首先就是在Android设备中安装Cydia Substrate框架的本地服务应用substrate.apk
然后,需要"Link Substrate Files"(连接本地的Substrate服务文件),这一步是需要Root权限的,连接后还需要重启设备才能够生效。
第二步:
下载使用Cydia Substrate库(直接去官网下载)。下载完成后,将得到的所有文件(很多的jar包与so库),都拷贝到Android项目下的libs文件夹中,就可以直接使用了。其中的substrate.h头文件与lib文件夹下的so文件是提供在使用NDK(Native Development Kit,