您的位置:首页 > 其它

依赖lean cloud的注册与登录

2015-12-09 22:32 232 查看

前言

实现登录注册的基本功能,没有添加手机验证和邮箱验证的功能,有相应的方法,如果需要,可以自己加上其相应的方法

github的网址:

效果图:









正文

1.导入leancloud相应的第三方,这个等我再写一个博客告诉大家怎么用,leancloud的官方文档也都有写,官方网址:https://leancloud.cn/?

2.在你注册的leancloud里创建一个应用,那到appkey写到Appdelegate.m中,在这个应该中你就可以看见注册你的app的用户信息了.

3.当你布置好页面以后,我的习惯先写注册功能,先创建一个用户AVUser

//1.创建一个用户
AVUser *user = [AVUser user];
user.username = userName;
user.password = passWord;

//2.注册的方法
[user signUpInBackgroundWithBlock:^(BOOL succeeded, NSError *error) {
NSLog(@"lls");
if (succeeded) {

//3.如果注册成功就直接登陆

NSLog(@"注册成功");

}else{

NSLog(@"注册失败");
}

}];


4.注册成功的话,要调用登录的方法

//1.登陆的方法
[AVUser logInWithUsernameInBackground:userName password:passWord block:^(AVUser *user, NSError *error) {

//有用户
if (user != nil) {

//2.登陆成功,去根视图
AppDelegate *app = [UIApplication sharedApplication].delegate;

RootViewController *rootVC = [[RootViewController alloc] init];
UINavigationController *rootNC = [[UINavigationController alloc] initWithRootViewController:rootVC];

app.window.rootViewController = rootNC;

}else{

}

}];


5.基本功能完成了,开始解决问题

1)不能每次都让你的用户登录,如果之前登录了,再次启动时不用用户再次登录,写一个判断方法,之前用block回调通知是否登录了,

isLoginBlock(YES);


isLoginBlock(NO);


2)知道是否登录后,需要知道用户名和密码和用户id让他自动登录,所以之前应该保证到本地数据

//把信息存在本地
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
//存放
[defaults setObject:user.username forKey:@"userName"];
[defaults setObject:user.objectId forKey:@"objectId"];
[defaults setObject:user.password forKey:@"password"];

[defaults setObject:@"YES" forKey:@"isLogin"];


3)如果block的结果是YES,就当本地取数据,之后更换你的根视图

//在本地取
NSUserDefaults *userDegaults = [NSUserDefaults standardUserDefaults];
//就是之前登陆了
if ([[userDegaults objectForKey:@"isLogin"] isEqualToString:@"YES"]) {

[UserManager shareUser].userName = [userDegaults objectForKey:@"userName"];
[UserManager shareUser].passWord = [userDegaults objectForKey:@"password"];
[UserManager shareUser].userId = [userDegaults objectForKey:@"objectId"];

RootViewController *rootVC = [[RootViewController alloc] init];
self.window.rootViewController = rootVC;


4)如果block的结果是NO,根视图就是登录页面

miaomiaocat小语

注册登录方法思路应该有很多,这仅代表我自己的想法,当然有很多不足,也需大家一个帮助更改,欢迎评价.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: