我要对iOS .app文件进行反编译,然后插入我的代码,然后重新打包回ipa文件。
你能否提出一些指示如何做?
答案 0 :(得分:5)
你根本做不到。
将应用程序编译成机器代码后,您可以从逆向工程中获得最佳效果,这只是程序集,除非您愿意在程序集中编写修复程序,否则我看不出您将如何集成代码。
此外,代码签名也会被破坏。 除非您在计算机上设置了有效的配置,否则无法使用原始代码签名重新打包应用程序。
尝试使用您需要的功能来获取源或类似的源来编写应用程序。
答案 1 :(得分:3)
是的,如果设备被越狱并且删除了签名检查,则可以。
这里有一个案例:
Is it possible to edit and recompile an iOS Binary?
在回复中,他们建议直接对二进制文件进行修改(通过将一些函数替换为相同大小的其他函数)。但是,我相信你可以做更高级的事情。
例如,您可以使用XCode将应用程序组装到您自己的objective-c代码中:
Compiling Assembly (.S) file alongside iPhone project
或直接将修改后的程序集编译为二进制文件(mach-o),然后重新打包。
How to create an iPhone mach-o file?
也许GNU ARM或LLVM toolchain可以帮助您执行此操作:Compile, Assemble and Disassemble Using the LLVM Tool Chain
我正在研究一些方法。这不是直截了当的,因此非常感谢关于该主题的任何其他专业知识。