0
我打电话Facebook的图形API来获取登录到通过Facebook我的应用程序的用户的电子邮件,Facebook的ID和名称。调度队列的异步Web服务调用
我成功获取信息;我现在试图使用调度组,以便调用图的函数在返回之前等待图API调用完成。图形请求是异步的。
我想不通为什么这个代码是锁定的。
1)创建一个调度组
2)输入所述显示组
3)离开基团一旦信息被检索或错误被发现
4)等待之前的组离开返回
好像我的调度组输入不正确调用,但我想不出为什么。
class func getFBInformation()->Bool {
var fbResult = false
let fbGraphGroup = DispatchGroup()
fbGraphGroup.enter()
FBSDKGraphRequest(graphPath: "/me", parameters: ["fields": "id, name, email"]).start { (connection, result, err) in
if err != nil {
fbResult = false
print("Pre Error Signal")
fbGraphGroup.leave()
return
}
if let resultDict = result as? [String:AnyObject] {
<Do things with graph results>
print("Pre success signal")
fbResult = true
fbGraphGroup.leave()
}
}
fbGraphGroup.wait()
print("Post signal")
return fbResult
}