Objective C - 保护框架代码

时间:2012-10-24 00:06:28

标签: objective-c frameworks breakpoints source-code-protection

我必须向其他人展示我正在开发的项目,但我希望保护项目中的框架不被可读。我刚刚在框架中打包了所有代码并将其添加到项目中。

问题是,当框架调用一些委托方法并且我为这些Xcode设置断点时,会显示那些调用来自的完整.m / .mm文件。我怎么能防止这种情况?我想保护我的代码。

2 个答案:

答案 0 :(得分:4)

您只看到代码,因为它可以在您的计算机上使用,Spotlight可以找到它。如果您分发已编译的框架二进制文件,则源代码将不会显示在调试器中,尽管方法的名称将会出现。剥离二进制文件(“Strip Linked Product”)将删除一些函数名称,但不删除方法,因为这些函数必须在运行时可用才能使消息调度工作。这将使得使用崩溃日志变得更加困难,所以除非你真的需要节省空间,否则我通常不会推荐它。

请记住,您可以(或应该)做很多事情来防止逆向工程。所有语言都受到逆向工程的影响,但ObjC特别容易受到其性质的影响。有关详细信息,请参阅Decompiling Objective-C libraries

答案 1 :(得分:1)

将您的框架编译为二进制文件。这将“保护”源代码不被读取,只有头文件(您选择)被公开。