在iOS私有框架中查找API原型

4
我试图使用iOS私有框架中的一些私有API。但是我无法找到函数原型,以便了解要传递给API的参数数量和数据类型。 我尝试使用一些开源反编译框架,例如http://www.radare.org/y/,因为他们声称具有以下功能:
//------------------------------
在操作码、基本块、函数级别进行代码分析 嵌入式简单虚拟机来模拟代码 跟踪代码和数据引用 函数调用和系统调用反汇编 函数描述、注释和库签名
//------------------------------
我尝试使用他们的objc.pl脚本生成r2文件。但是我无法超越那个阶段。
任何帮助将不胜感激。

1
https://dev59.com/cnE95IYBdhLWcg3wY85l#2336679 - Greg
@PartiallyFinite 使用这个工具,我能够反汇编框架文件,但无法获取函数原型(以便知道参数数量和数据类型)。 - Avinash
1个回答

1
你可以使用class-dump 实用程序为静态库生成完整的头文件(包括私有 API):
class-dump -H LibraryFile

尝试了这种方法,是的,它确实提取了头文件。但是当我使用class-dump提取头文件时,其中一个我已经在私有框架中使用的API丢失了。还有一个问题是,如何反编译头文件,因为头文件中的许多函数都是(void)类型的。 - Avinash
@Avinash 请阅读class-dump文档。它有很多其他选项,可以帮助你得到想要的结果。 - Greg
https://github.com/Cykey/ios-reversed-headers/blob/master/SpringBoardServices/SpringBoardServices.h 你有任何想法他是如何得到这些的吗?当我使用class-dump时,我无法获取任何这些信息。我是新手。 - Avinash

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接