以下是在 viewDidAppear 下面的代码中运行 getFBfriends()时的输出:
输出:
Result Dict: {
data = (
);
summary = {
"total_count" = 711;
};
}
Found 0 friends
" total_count = 711"是正确的,但没有关于朋友的数据。我在这里错过了什么?认为权限是正确的。
代码:
class SignUpViewController: UIViewController {
@IBOutlet weak var btn_signIn: UIButton!
@IBAction func action_btnSignIn(sender: AnyObject) {
var permissions = ["public_profile", "user_friends"]
println("in action_btnSignIn() of SignUpViewController")
var fbloginView:FBLoginView = FBLoginView(readPermissions: ["email", "public_profile", "user_friends"])
override func viewDidAppear(animated: Bool) {
if PFUser.currentUser() != nil {
println("User logged in, so launching Menu Screen")
//self.performSegueWithIdentifier("launchmenu", sender: self)
getDBfriends()
} else {
println("User NOT logged in")
}
}
func getDBfriends() {
var friendsRequest: FBRequest = FBRequest.requestForMyFriends()
friendsRequest.startWithCompletionHandler{(connection:FBRequestConnection!, result:AnyObject!, error:NSError!) -> Void in
var resultdict = result as NSDictionary
println("Result Dict: \(resultdict)")
var data : NSArray = resultdict.objectForKey("data") as NSArray
for i in 0..<data.count {
let valueDict : NSDictionary = data[i] as NSDictionary
let id = valueDict.objectForKey("id") as String
println("the id value is \(id)")
}
var friends = resultdict.objectForKey("data") as NSArray
println("Found \(friends.count) friends")
}
}
}
答案 0 :(得分:4)
从图谱API的v2.0开始,您只能获得授权您的应用的朋友。结果是正确的,没有一个朋友授权你的应用程序,所以它是空的,只显示朋友的总数。
更多信息:Get ALL User Friends Using Facebook Graph API - Android
答案 1 :(得分:3)
您的权限是正确的,但尝试使用其他fb帐户登录您的应用,您将在数据响应中获得该用户详细信息。