#import <Foundation/Foundation.h>
#define CSUserManager [CSAccountManager shareManager]
static NSString *const kUserManagerKey = @"kUserManagerKey";
@interface CSAccountManager : NSObject
@property (nonatomic, copy) NSString *name;
@property (nonatomic, copy) NSString *mobileNo;
+ (instancetype)shareManager;
- (void)getUserData;
- (void)updateUserData;
- (void)resetUserData;
@end
#import "CSAccountManager.h"
//Libs
#import <MJExtension/MJExtension.h>
static CSAccountManager *instance = nil;
static dispatch_once_t onceToken;
@implementation CSAccountManager
+ (instancetype)shareManager {
dispatch_once(&onceToken, ^{
if (!instance) {
instance = [[CSAccountManager alloc] init];
[instance getUserData];
}
});
return instance;
}
- (void)getUserData {
NSUserDefaults *userDefault = [NSUserDefaults standardUserDefaults];
NSDictionary *dict = [userDefault objectForKey:kUserManagerKey];
[self mj_setKeyValues:dict];
}
- (void)updateUserData {
NSUserDefaults *userDefault = [NSUserDefaults standardUserDefaults];
NSDictionary *dict = [self mj_JSONObject];
[userDefault setObject:dict forKey:kUserManagerKey];
[userDefault synchronize];
}
- (void)resetUserData {
instance = nil;
onceToken = 0l;
[[NSUserDefaults standardUserDefaults] removeObjectForKey:kUserManagerKey];
[[NSUserDefaults standardUserDefaults] synchronize];
}
@end
网友评论