使用 NSUserDefaults 序列化用户,并使用 SSKeychain 保存敏感令牌。
只需将以下内容添加到您的 Podfile。
pod 'SerializedUser'
SerializedUser 提供以下类方法。
+ (instancetype)currentUser;
+ (BOOL)isUserLoggedIn;
SerializedUser 还提供实例方法。
- (void)persist;
SerializedUser 添加属性。
@property (nonatomic, strong) NSString *token;
1. 您应该创建自己的用户模型,并扩展 SerializedUser
#import "SerializedUser.h"
@interface CLUser : SerializedUser
@property (nonatomic, strong) NSString *email;
@end
#import "CLUser.h"
@implementation CLUser
- (void)encodeWithCoder:(NSCoder *)encoder {
[encoder encodeObject:self.email forKey:@"email"];
}
- (id)initWithCoder:(NSCoder *)decoder {
self = [super init];
if (self) {
self.email = [decoder decodeObjectForKey:@"email"];
}
return self;
}
@end
2. 然后您可以持久化用户。
CLUser *user = [[CLUser alloc] init];
user.email = @"[email protected]";
user.token = @"access_token";
[user persist];
3. 并且获取当前用户。
if ([CLUser isLoggedIn]) {
[CLUser currentUser].email;
[CLUser currentUser].token;
}