Objective-C 代码很容易被 hook,因此需要对一些重要的业务逻辑进行保护,可以改用结构体的形式,把函数名隐藏在结构体里,以函数指针成员的形式存储.这样编译后只留了下地址,去掉了名字和参数表,提高了逆向成本和攻击门槛. 例如,把以下代码进行保护: + (BOOL)isPermission:(int)level; + (CGFloat)totalAmont; + (void)somePraviteMethod:(NSString *)paraStr1 numberValue:(doubl…