代码之家  ›  专栏  ›  技术社区  ›  TalkingCode

如何查找未记录的iPhone API调用?

  •  3
  • TalkingCode  · 技术社区  · 14 年前

    在iPhone开发的早期,应用程序常常因为使用未记录的API调用而被逐出应用程序商店。我总是问自己,人们是如何发现这些方法的,以及它们的作用。 我对Objective-C有点了解,我知道您可以向任何对象发送任何消息,甚至可以通过调用respondstoselector来检查对象是否会响应方法。因此,使用未记录的API调用似乎不是问题,但我不知道如何找到它们。

    顺便说一句,我不想使用未记录的API函数。我只想知道该怎么做。在使用第三方框架时非常有用。或者有一天人们会使用我创建的框架。

    1 回复  |  直到 14 年前
        1
  •  5
  •   Jasarien    14 年前

    退房 Class Dump . 这将贯穿整个框架,并基本上创建它们所包含的每个方法等的头部。对于逆向工程框架非常有用。

    您也可以尝试使用 strings 来自命令行的实用程序。这个 实用程序将打印出编译后的二进制文件中包含的所有原始字符串,这些字符串在查找方法名等时很有用。

    使用 会有点困难/乏味,因为它还可以打印很多垃圾以及有用的东西,所以你需要在其中搜索以找到有趣的东西。

    希望这有帮助。