这篇讲的是如何使用Logify.pl 来跟踪函数的调用,以及获取调用的参数。
这里用到的例子还是MethodSwizzlingDemo,我们要通过Log来跟踪ViewController中的函数调用过程。
首先dump出头文件。
然后我们使用logify.pl脚本把我们要跟踪的头文件ViewController.h转换成Tweak.xm:
/opt/theos/bin/logify.pl ViewController.h > Tweak.xm
如果要跟踪多个头文件,则继续转换:/opt/theos/bin/logify.pl 其它头文件 >> Tweak.xm 注意中间是 >>
打开生成好的Tweak.xm
其实就是先打印日志,然后调用原来的方法,有返回,打印返回值。
新建Theos工程:
用我们生成好的Tweak.xm覆盖项目中得Tweak.xm
mv Tweak.xm methodtrace/
编译、打包、上传到设备、安装。
安装完成后,打开Xcode->Window->Device->你的设备,下面有Log显示,然后打开MethodSwizzlingDemo,输入admin,123456,点击Login Method1。
函数调用顺序,账号,密码都显示出来了~~~有木有。
同时/Library/MobileSubstrate/DynamicLibraries目录下多了两个文件:
就是我们安装生成动态库和Filter文件。
Permalink
好给力!支持支持!