#import <Foundation/Foundation.h>
NS_ASSUME_NONNULL_BEGIN
#define DUserDefaultsSET(object,key) [DataManager setDataKey:key data:object]
#define DUserDefaultsGET(key) [DataManager getDataKey:key]
#define DUserDefaultsRemove(key) [DataManager removeObjectForKey:key]
@interface DataManager : NSObject
+ (id)getDataKey:(NSString*)key;
+ (void)setDataKey:(NSString *)key data:(id)data;
+ (void)removeObjectForKey:(NSString *)key;
@end
NS_ASSUME_NONNULL_END
#import "DataManager.h"
@implementation DataManager
+ (id)getDataKey:(NSString*)key {
NSData *dataObject = [[NSUserDefaults standardUserDefaults] objectForKey:key];
return [NSKeyedUnarchiver unarchiveObjectWithData:dataObject];
}
+ (void)setDataKey:(NSString *)key data:(id)data {
NSData *modelObject = [NSKeyedArchiver archivedDataWithRootObject:data];
[[NSUserDefaults standardUserDefaults] setObject:modelObject
forKey:key];
[[NSUserDefaults standardUserDefaults] synchronize];
}
+ (void)removeObjectForKey:(NSString *)key{
[[NSUserDefaults standardUserDefaults] removeObjectForKey:key];
}
@end