JKDataHelper升级之添加宏定义开关

  JKDataHelper这个数据容错保护库,在使用中,感觉很好的解决了数据异常造成的线上app crash的现象。但是在使用的过程中仍然发现了一些问题,比如对于某些方法的拦截还有遗漏,我这次补齐了一下,另外就是在调试阶段,有的时候我不想进行容错保护,我就是想让程序出现crash,方便我定位bug。下面就来说说自己升级改动的地方吧

1,补齐遗漏的方法

        Class targetClass = NSClassFromString(@"__NSArrayI");

...

  [self JKswizzleMethod:@selector(objectAtIndexedSubscript:) withMethod:@selector(JKsafeObjectAtIndexedSubscript:) withClass:targetClass];
Class targetClass = NSClassFromString(@"__NSArrayM");
...
 [self JKswizzleMethod:@selector(objectAtIndexedSubscript:) withMethod:@selector(JKsafeObjectAtIndexedSubscript:) withClass:targetClass];

增加了之前漏掉的两个方法,完善对NSArray,NSMutableArray的数据容错。

2,添加宏定义开关

这个宏定义开关主要是在JKDataHelperMacro.h这个文件中#define JKDataHelperDebug的宏定义,如果不想使用JKDataHelper的拦截容错功能的话,可以将该宏定义注释掉,如果想使用的话,放开这个宏定义的注释就好了。
代码下载地址:
https://github.com/xindizhiyin2014/JKDataHelper
更多优质文章,可以微信扫码关注:
这里写图片描述

猜你喜欢

转载自blog.csdn.net/hhl110120/article/details/80743487
今日推荐