Mah*_*kar 2 xcode gdb objective-c ios cycript
我了解了下面这段代码,声称可以在某种程度上阻止Method Swizzling.
#ifndef DEBUG
SEC_IS_BEING_DEBUGGED_RETURN_NIL();
#endif
Run Code Online (Sandbox Code Playgroud)
但是在我的测试项目中包含了一些错误.
函数'SEC_IS_BEING_DEBUGGED_RETURN_NIL'的隐式声明在C99中无效
如果我需要包含任何库标题,有人可以帮我解决这个错误.
我不打算回答我自己的问题.从上面的评论中,我搜索了任何这样的实现.并在GitHub项目中找到了这个.这是一个类别NSObject
也许,它会帮助任何人future.
#define SEC_IS_BEING_DEBUGGED_RETURN_NIL() size_t size = sizeof(struct kinfo_proc); \
struct kinfo_proc info; \
int ret, name[4]; \
memset(&info, 0, sizeof(struct kinfo_proc)); \
name[0] = CTL_KERN; \
name[1] = KERN_PROC; \
name[2] = KERN_PROC_PID; \
name[3] = getpid(); \
if ((ret = (sysctl(name, 4, &info, &size, NULL, 0)))) { \
if (ret) return nil; \
} \
if (info.kp_proc.p_flag & P_TRACED) return nil
Run Code Online (Sandbox Code Playgroud)
对此制造商的信誉
//由Derek Selander在愉快的一天创建.//
//版权所有(c)
// 2013 Derek Selander.版权所有.//
| 归档时间: |
|
| 查看次数: |
999 次 |
| 最近记录: |