PFFacebookUtils 登录后台无法将值转换为 PFUserResultBlock

Posted

技术标签:

【中文标题】PFFacebookUtils 登录后台无法将值转换为 PFUserResultBlock【英文标题】:PFFacebookUtils login background cannot convert value to PFUserResultBlock 【发布时间】:2016-01-18 08:02:38 【问题描述】:

使用以下代码:

@IBAction func FBLogin(sender: AnyObject) 

        @IBAction func FBLogin(sender: AnyObject) 

    PFFacebookUtils.logInInBackgroundWithReadPermissions(self.permissions)
        (user: PFUser!, error: NSError!) -> Void in
        if user == nil 
            NSLog("Login Canceled")
         else if user.isNew 
            NSLog ("user signed up and logged in through FB")
         else  NSLog ("user logged in through FB")
        
       

我收到以下错误:

“无法将类型 '(PFUser!, NSError!) -> Void' 的值转换为预期的参数类型 PFUserResultBlock

有什么建议吗?

【问题讨论】:

【参考方案1】:

您收到的错误消息表明您的结果块的类型签名与预期的签名不匹配。特别是,看看你的参数类型(usererror)。它们都是隐式展开的可选项 (!)。我相信正确的类型是可选的(?)。有关更多详细信息,请参见此答案: Parse Facebook logInInBackgroundWithReadPermissions (Swift)

另见文档中的官方示例: https://parse.com/docs/ios/guide#users-facebook-users

【讨论】:

以上是关于PFFacebookUtils 登录后台无法将值转换为 PFUserResultBlock的主要内容,如果未能解决你的问题,请参考以下文章

用户在使用 PFFacebookUtils 登录时取消选择 Facebook 权限

在相同情况下,PFFacebookUtils 登录结果为无效范围

尝试使用 Parse PFFacebookUtils 登录 Facebook 时出现错误 307

如果安装了 Facebook 应用程序,PFFacebookUtils 登录方法不会执行任何操作

PFFacebookUtils logIn 有时会创建新用户,有时会登录

PFFacebookUtils 无法从 Facebook 注销