MacroFuncUtil.h 2.0 KB
//
//  MacroFuncUtil.h
//  DreamSleep
//
//  Created by peter on 2022/3/29.
//

#import <Foundation/Foundation.h>

// APP和KeyWindow
#define DSApplication [UIApplication sharedApplication]
#define DSKeyWindow DSApplication.keyWindow

// 系统及APP版本
#define DSSystemVersion ([[[UIDevice currentDevice] systemVersion] floatValue])
#define DSAppVersion ([[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleShortVersionString"])

// Info配置信息
#define DSInfoDic [NSDictionary dictionaryWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"Info" ofType:@"plist"]]

// weakSelf
#define WS(weakSelf) __weak __typeof(&*self)weakSelf = self;

// Log打印
#if defined(DEBUG)
#define DSLog(format, ...) printf("\n[%s] %s [第%d行] %s\n", __TIME__, __FUNCTION__, __LINE__, [[NSString stringWithFormat:format, ## __VA_ARGS__] UTF8String]);
#else
#define DSLog(format, ...)
#endif

#pragma mark - UserDefaults
// OBJ
#define kSetUserDefaultsObj(obj, key) [[NSUserDefaults standardUserDefaults] setObject:obj forKey:key]
#define kGetUserDefaultsObj(key) [[NSUserDefaults standardUserDefaults] objectForKey:key]
// BOOL
#define kSetUserDefaultsBOOL(boolValue, key) [[NSUserDefaults standardUserDefaults] setBool:boolValue forKey:key]
#define kGetUserDefaultsBOOL(key) [[NSUserDefaults standardUserDefaults] boolForKey:key]
// Double
#define kSetUserDefaultsDouble(doubleValue, key) [[NSUserDefaults standardUserDefaults] setDouble:doubleValue forKey:key]
#define kGetUserDefaultsDouble(key) [[NSUserDefaults standardUserDefaults] doubleForKey:key]
// Integer
#define kSetUserDefaultsInteger(integerValue, key) [[NSUserDefaults standardUserDefaults] setInteger:integerValue forKey:key]
#define kGetUserDefaultsInteger(key) [[NSUserDefaults standardUserDefaults] integerForKey:key]
// Synchronize
#define kUserDefaultsSynchronize [[NSUserDefaults standardUserDefaults] synchronize]
// Remove
#define kUserDefaultsRemoveObj(key) [[NSUserDefaults standardUserDefaults] removeObjectForKey:key]

NS_ASSUME_NONNULL_BEGIN
@interface MacroFuncUtil : NSObject
@end
NS_ASSUME_NONNULL_END