Facebook登录继续回归Nil - Parse / Swift

时间:2015-06-13 23:29:19

标签: ios swift parse-platform facebook-login

所以我一直在尝试在我的应用中实现Facebook登录。使用我自己的界面和按钮。用户按下登录按钮后,将运行以下代码以尝试登录用户。

let permissions = ["public_profile"]     

@IBAction func fbLoginClick(sender:AnyObject){
    PFFacebookUtils.logInWithPermissions(self.permissions, block: {
        (user: PFUser?, error: NSError?) -> Void in
        if error == nil {
            NSLog("Cancelled Facebook Login")
            NSLog("FB login error: \(error)")
        }else if user!.isNew {
            NSLog("User signed up and logged in \(user)")
            self.performSegueWithIdentifier("login", sender: self)
        }else {
            NSLog("User logged in through facebook \(user)")
            self.performSegueWithIdentifier("login", sender: self)
        }

    })
}

它将运行此代码并启动Facebook应用程序以请求用户的许可,如您所料。但是,当我按下同意这样做时,它只返回到相同的视图控制器说,取消Facebook登录并且错误是零。

我已经在AppDelegate.swift中正确设置了所有内容,所以我不完全确定发生了什么!任何帮助将不胜感激!

编辑:我应该补充说我有一个通过Parse处理的登录工作完全正常,它只是Facebook的一个,我还在必要时添加了所有相关的Facebook App ID。

1 个答案:

答案 0 :(得分:0)

首先:它应该是

if error != nil { NSLog("Cancelled Facebook Login") NSLog("FB login error: \(error)") }

其次,如果您想要电子邮件,您的权限应该如下:

loginView.readPermissions = ["public_profile", "email",]