混淆可重用iOS包的Objective-C代码

lav*_*voy 2 obfuscation frameworks objective-c static-libraries ios

可能重复:
Objective-C代码混淆

我正在尝试整合一个可以在多个应用程序中重用的iOS包.我希望能够将其捆绑给其他人以便轻松插入和使用,我想混淆代码,以便没有人可以阅读它.

在构建框架,静态库或其他解决方案以实现此目的和原因之间,您会建议什么?

Dav*_*ong 6

如果您要分发iOS,则有两种选择:

  1. 分发预编译的二进制文件和标头
  2. 分发源

既然你要求隐藏东西,我认为#2不是你想要的东西.

对于#1,你能做的最好的事情就是不要告诉第三方用户更多的东西.他们仍然可以使用运行时来查找方法和属性以及实例变量等.如果你在C-land中做所有事情(即没有Objective-C类),那么他们仍然可以使用类似otool转储的东西符号.

简而言之:

可能不值得尝试"混淆"您的代码.只需告诉他们他们需要知道的东西,然后给他们一个.a文件和他们需要的标题.