【发布时间】:2015-08-13 22:11:02
【问题描述】:
我正在使用 FB 登录,我的应用程序在该方法中时不时地崩溃。它适用于我,但不适用于其他一些用户。在这个函数中,我使用从FBSDKGraphRequest 接收的数据在 Parse 中设置用户数据。
// Sends FB Graph Request and sets user attributes in Parse
func setUserData() {
var user = PFUser.currentUser()!
let graphRequest : FBSDKGraphRequest = FBSDKGraphRequest(graphPath: "me", parameters: nil)
graphRequest.startWithCompletionHandler({ (connection, result, error) -> Void in
if ((error) != nil)
{
println("Set user values error: \(error)")
}
else
{
firstName = result.valueForKey("first_name") as! NSString
lastName = result.valueForKey("last_name") as! NSString
user["name"] = "\(firstName) \(lastName)"
NSUserDefaults.standardUserDefaults().setObject("\(firstName) \(lastName)", forKey: "name")
id = result.valueForKey("id") as! NSString
user["fbID"] = id
gender = result.valueForKey("gender") as! NSString
user["gender"] = gender
email = result.valueForKey("email") as! NSString
user["email"] = email
user["score"] = 100
user.saveInBackgroundWithBlock({ (success, error) -> Void in
if success {
objID = user.objectId!
}
})
self.performSegueWithIdentifier("segue", sender: self)
}
})
}
现在,在 Crashlytics 中,我收到了 EXC_BREAKPOINT,但无法准确确定崩溃的来源或解决方法。看起来它可能来自 Facebook 方面?任何帮助将不胜感激。
【问题讨论】:
-
我会从打印结果开始。当 Facebook SDK 调用您的完成处理程序时,似乎发生了崩溃。
-
@corvuszero 我无法读取该用户崩溃的日志。它在 FBSDKGraphRequest 函数的右括号处崩溃。我正在使用
if error != nil处理错误,所以我知道为什么会崩溃和冻结
标签: facebook swift parse-platform