ICMethodDigger
一种简单的方法,可以打印几乎所有的方法,包括私有方法(支持arm64架构的设备)。
需求
- iOS 8.0+
- arm64 设备
安装
手动
将Source
文件夹下的所有文件拖动到您的项目中,并将构建架构设置为arm64
。
使用
- 将
ICMethodDigger.h
导入到您的目标文件中,如下所示
#import "ICMethodDigger.h"
- 调用
icm_logMethod
方法来记录您想要的内容
FOUNDATION_EXTERN void icm_logMethod(Class cls, ICConditionBlock condition, _Nullable ICBeforeBlock before, _Nullable ICAfterBlock after);
-
- 记录目标类的所有方法
icm_logMethod([ViewController class], ^BOOL(SEL sel) {
NSLog(@"%@", NSStringFromSelector(sel));
return NO;
}, nil, nil);
-
- 记录运行中的方法
icm_logMethod([ViewController class], ^BOOL(SEL sel) {
NSLog(@"%@", NSStringFromSelector(sel));
return YES;
}, nil, nil);
-
- 记录方法的耗时
icm_logMethod([UIViewController class], ^BOOL(SEL sel) {
return YES;
}, nil, ^(id target, SEL sel, NSArray *args, NSTimeInterval interval, id retValue) {
NSLog(@"target:%@ sel:%@ interval: %f", target, NSStringFromSelector(sel), interval);
});
贡献
欢迎提出问题和拉取请求!
致谢
许可
ICMethodDigger属于MIT许可。有关更多信息,请参阅LICENSE文件。