尽管登录被取消,但使用Facebook登录仍会返回用户

时间:2014-11-12 18:27:37

标签: ios parse-platform facebook-login

我使用Parse SDK来支持使用Facebook登录。但是,如果我取消登录视图("现在不是"左下角的按钮),则以下方法仍会返回用户。

[PFFacebookUtils logInWithPermissions:permissions block:^(PFUser *user, NSError *error) {
        if (!user) {
            NSLog(@"Uh oh. The user cancelled the Facebook login.");
        } else if (user.isNew) {
            NSLog(@"User signed up and logged in through Facebook!");
        } else {
            NSLog(@"User logged in through Facebook!");
        }
 }];

通常它应该跳转到第一个if语句,但奇怪的是PFUser对象不是nil并且它跳转到第二个if语句。这意味着它在后端成功创建了一个用户,尽管登录被取消了。

我要求以下权限:

NSArray *permissions = @[@"public_profile", @"email", @"user_friends"];

1 个答案:

答案 0 :(得分:0)

这是一个我看过一年多的问题,不得不在当地处理。我最终解决它的方法是,如果用户取消了他们的注册过程,则从服务器删除新的PFUser。它也设置为如果他们不取消(离开应用程序)然后返回,他们可以继续/完成注册过程。我不知道您的应用程序是如何设置的或使用应用程序,但对我来说,添加取消注册过程操作是没有道理的。从那里删除当前创建新用户的进展才有意义。