将Facebook电子邮件存储在swift中的解析用户表中



我有以下几行代码。我应该添加什么才能同时存储电子邮件适用于swift的任何东西

  @IBAction func fblogin(sender: AnyObject) {
    var permissions = ["public_profile","email"]
    PFFacebookUtils.logInWithPermissions(permissions, {
        (user: PFUser!, error: NSError!) -> Void in
        if let user = user {
            if user.isNew {
                println("User signed up and logged in through Facebook!")
                var user = PFUser.currentUser()
                self.performSegueWithIdentifier("login", sender: self)
                //let defaults = NSUserDefaults.standardUserDefaults()
            } else {
                println("User logged in through Facebook!")
                self.performSegueWithIdentifier("login", sender: self)
            }
        } else {
            println("Uh oh. The user cancelled the Facebook login.")
        }
    })

点击Facebook按钮,考虑到你已经设置了解析和Facebook,这就是它的工作方式。

    @IBAction func fblogin(sender: AnyObject) {
    var permissions = ["public_profile","email"]
    PFFacebookUtils.logInWithPermissions(permissions, {
        (user: PFUser!, error: NSError!) -> Void in
        if let user = user {
            if user.isNew {
                println("User signed up and logged in through Facebook!")
                var user = PFUser.currentUser()
                self.performSegueWithIdentifier("login", sender: self)
                let defaults = NSUserDefaults.standardUserDefaults()
                FBRequestConnection.startForMeWithCompletionHandler({connection, result, error in
                    println(result.email);
                    PFUser.currentUser().setObject(result.email as String, forKey: "email")
                    PFUser.currentUser().saveInBackground()

                })
                defaults.setBool(true,forKey:"signedup")
                self.performSegueWithIdentifier("login", sender: self)}
            else {
                println("User logged in through Facebook!")
                let defaults = NSUserDefaults.standardUserDefaults()
                defaults.setBool(true,forKey:"signedup")
                self.performSegueWithIdentifier("login", sender: self)
            }
        } else {
            println("Uh oh. The user cancelled the Facebook login.")
        }
    })


}

在目标c中,您可以通过这种方式解决问题

[PFFacebookUtils logInWithPermissions:permissionsArray
                                block:^(PFUser *user, NSError *error) {
  if (user) {
    [FBRequestConnection startForMeWithCompletionHandler:^(FBRequestConnection *connection, id result, NSError *error) {
      if (!error) {
        // Store the current user's Facebook ID on the user
        [[PFUser currentUser] setObject:[result objectForKey:@"id"]
                                 forKey:@"fbId"];
        [[PFUser currentUser] saveInBackground];
      }
    }];
  }
}];

最新更新