12345678910111213141516171819202122232425262728293031323334353637 |
- //
- // NSObject+ZHIMI.m
- // zhimi
- //
- // Created by Apple on 2019/10/8.
- // Copyright © 2019 caiPro. All rights reserved.
- //
- #import "NSObject+ZHIMI.h"
- //modify by leo 20191008
- @implementation NSObject (ZHIMI)
- + (void)load{
-
- SEL originalSelector = @selector(doesNotRecognizeSelector:);
- SEL swizzledSelector = @selector(sw_doesNotRecognizeSelector:);
-
- Method originalMethod = class_getClassMethod(self, originalSelector);
- Method swizzledMethod = class_getClassMethod(self, swizzledSelector);
-
- if(class_addMethod(self, originalSelector, method_getImplementation(swizzledMethod), method_getTypeEncoding(swizzledMethod))){
- class_replaceMethod(self, swizzledSelector, method_getImplementation(originalMethod), method_getTypeEncoding(originalMethod));
- }else{
- method_exchangeImplementations(originalMethod, swizzledMethod);
- }
- }
- + (void)sw_doesNotRecognizeSelector:(SEL)aSelector{
- //处理 _LSDefaults 崩溃问题
- if([[self description] isEqualToString:@"_LSDefaults"] && (aSelector == @selector(sharedInstance))){
- //冷处理...
- return;
- }
- [self sw_doesNotRecognizeSelector:aSelector];
- }
- @end
|