我对越狱 iOS 设备的开发还很陌生。从我读到的内容中,我了解到,为了能够完成所有在非越狱手机上无法完成的很酷的事情,您必须连接到给定的类并覆盖其某些行为。由于没有文档,开发人员如何准确跟踪他应该 Hook 哪个类?
我想,例如,如果我想让我的应用程序响应给定的事件,例如电话启动、调用挂断或用户单击图标,我将手动生成给定的事件并查看进行了哪些调用。这是跟踪您应该在何处 Hook 代码的正确方法吗?如果是的话,它是如何完成的。
请注意,我对上面提到的那些事件并不感兴趣,我对一般方法更感兴趣。
最佳答案
有几种方法:
- 反汇编二进制文件
您可以反汇编二进制文件或仅使用 class-dump 之类的工具转储类。 因此,您可以看到类的整个层次结构。
- 查找转储的类
大多数主要的 iOS 子系统已经被某人拆解了。你可以找到很多有用的东西。
举个例子。谷歌搜索“Springboard headers”得到this
- 在运行时转储类。
看看这个问题的解释:List selectors for Objective-C object
关于iOS越狱设备开发: How to dump method calls,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14238632/