由于硬盘故障,我丢失了一个iPhone / iPad应用程序,我正在尝试恢复我的代码。我发现我仍然在模拟器中有应用程序,所以我能够从ipa的模拟器文件中恢复所有资源(因为它们没有加密)。那样太好了。但代码是编译的(我认为它是一个英特尔二进制文件)所以...是否完全不可能从这种文件中提取可读内容?
请注意: 我不是在谈论从Apple商店或其他地方解密/反编译ipa文件。它来自模拟器。
我认为这是不可能的,但谁知道呢!
提前致谢。
答案 0 :(得分:4)
不,这是不可能的。你的源代码消失了。您可以找到一些尝试恢复已删除文件的恢复软件。如果您使用过任何源代码控制管理,如CVS,SVN,Mercurial或GIT,那么本来可以节省您的费用。无论如何,从这个donot学到的经验教训依靠你的本地硬盘进行备份。
答案 1 :(得分:3)
您可以通过在可执行二进制文件上使用class-dump来挽救代码的整体结构。
它不会恢复所有代码,但应该能够恢复所有类定义。也就是说,如果你没有从调试符号中删除你的二进制文件。
关于硬盘无法恢复,我想这一切都取决于你愿意花多少钱。有些公司专门从崩溃的磁盘中恢复数据,据我所知,他们几乎可以恢复任何类型的磁盘故障。问题是你是否愿意支付这个价格,或者重新实现代码会更便宜。
答案 2 :(得分:3)
将.ipa后缀更改为.zip ...解压缩。在里面你会找到包含应用程序的Payload文件夹。打开该应用程序包,并且有您的文件。
适用于Mac。对Windows不确定。
答案 3 :(得分:-4)
如果你能恢复你的硬盘,那是唯一的方法。
您无法从.Ipa文件中获取数据。