【问题标题】:Is it possible to reverse-engineer my iPhone application?是否可以对我的 iPhone 应用程序进行逆向工程?
【发布时间】:2011-07-25 04:53:37
【问题描述】:

我创建了一个 iPhone 应用程序,我想将编译后的 .app 文件发送给我的客户,以便他可以在他的设备上安装和测试这个 iPhone 应用程序。

他是否可以查看这个 .app 文件的内容,比如这个应用程序中使用的资源文件(图像、声音文件等)?他能否对用于从编译产品构建此应用程序的源代码进行逆向工程?

【问题讨论】:

  • 要查看包内容,按住 CTRL 并单击 .app 文件,然后“显示包内容”。但是,代码被编译成 Unix 可执行文件和 .nib/ 接口构建器文件,这些文件不是人类可读的。
  • @Jerry Coffin:不,不是。 app 文件是目录。
  • @Harinder - 你原来的措辞很短而且不太清楚。随着您的进一步澄清,我编辑了您的一些措辞以帮助表明这是一个合理的问题。我同意现在应该重新打开它。
  • @fuzzy lollipop:是的,这就是我在谷歌搜索后发现的
  • @fuzzy lollipop 感谢您的更正。我把.app.ipa 混淆了...

标签: iphone objective-c


【解决方案1】:

在 OSX 上,Application Bundle 只是一个名为 .app 的目录,其中包含一些关于应用程序、应用程序可执行文件及其资源的特殊元数据文件。右键单击并选择Show Package Contents 将显示Application.app 目录的全部内容。

任何不使用特定应用程序加密的文件资源、图像、声音、属性文件等都可以轻松访问。

也就是说,如果应用程序代码是原生 Objective-C 应用程序,将被编译并且不容易逆向工程,则必须对其进行反编译,如果去除调试信息,则需要专门的黑客来破解程序集输出并修改它。

【讨论】:

  • 这是否意味着他们只要努力就能得到准确的源代码?
猜你喜欢
  • 2010-10-23
  • 1970-01-01
  • 2023-04-06
  • 2021-09-09
  • 2011-08-11
  • 2019-04-13
  • 2012-01-30
  • 2012-01-05
  • 1970-01-01
相关资源
最近更新 更多