// // JZUtil.m // JIZHANG // // Created by jikaipeng on 2017/11/6. // Copyright © 2017年 kuxuan. All rights reserved. // #import "JZUtil.h" @implementation JZUtil + (void)saveTimeinterval{ //获取当前时间 NSDate *date = [NSDate date]; NSString *dateTimeInterval = [NSString stringWithFormat:@"%.0f",[date timeIntervalSince1970]]; [[NSUserDefaults standardUserDefaults]setObject:dateTimeInterval forKey:JZTokenInvalid]; } + (BOOL)judeTokenInvalid:(NSDate *)date{ NSString *dateTimeInterval = [[NSUserDefaults standardUserDefaults] objectForKey:JZTokenInvalid]; if (dateTimeInterval.length) { CGFloat lastTimeInterval = [dateTimeInterval floatValue]; NSString *currentTimeString = [NSString stringWithFormat:@"%.0f",[date timeIntervalSince1970]]; CGFloat curTimeTerval = [currentTimeString floatValue]; if (curTimeTerval - lastTimeInterval < MAXFLOAT) { return YES; } return NO; } return NO; } + (BOOL)swizzleMethod:(SEL)originalSelector withMethod:(SEL)swizzledSelector error:(NSError **)error { Method originalMethod = class_getInstanceMethod(self, originalSelector); if (!originalMethod) { NSString *string = [NSString stringWithFormat:@" %@ 类没有找到 %@ 方法",NSStringFromClass([self class]),NSStringFromSelector(originalSelector)]; *error = [NSError errorWithDomain:@"NSCocoaErrorDomain" code:-1 userInfo:[NSDictionary dictionaryWithObject:string forKey:NSLocalizedDescriptionKey]]; return NO; } Method swizzledMethod = class_getInstanceMethod(self, swizzledSelector); if (!swizzledMethod) { NSString *string = [NSString stringWithFormat:@" %@ 类没有找到 %@ 方法",NSStringFromClass([self class]),NSStringFromSelector(swizzledSelector)]; *error = [NSError errorWithDomain:@"NSCocoaErrorDomain" code:-1 userInfo:[NSDictionary dictionaryWithObject:string forKey:NSLocalizedDescriptionKey]]; return NO; } 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); } return YES; } @end