我想在我的应用中从Facebook获取朋友列表。我能够正确地获取total_friends
,但是朋友列表不会出现在结果中。
我当前的代码无效:
CODE:
NSMutableString *facebookRequest = [NSMutableString new];
[facebookRequest appendString:@"/me/friends"];
[facebookRequest appendString:@"?limit=100"];
NSDictionary *friendParams = @{@"fields" : @"name"};
FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc] initWithGraphPath:@"/me/friends"
parameters:friendParams
HTTPMethod:@"GET"];
[request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection, id result, NSError *error) {
//my code here
}
输出:
{
data = (
);
summary = {
"total_count" = 661;
};
}
我正在使用Xcode 7.1
答案 0 :(得分:4)
我使用了类似的方法,但我的代码很快。你的朋友列表是他们的,但你没有得到你必须创建一个数组的名称。并将你朋友的所有结果都放到那个数组中。并在任何你想要展示的地方展示它。
以下是swift中Facebook好友的代码:
let graphRequest : FBSDKGraphRequest = FBSDKGraphRequest(graphPath: "me/friends", parameters: ["fields": "id,name,picture"])
graphRequest.startWithCompletionHandler( { (connection, result, error) -> Void in
if ((error) != nil)
{
print("Error: \(error)")
return
}
else
{
let friends = result.valueForKey("data") as! NSArray
var count = 1
if let array = friends as? [NSDictionary] {
for friend : NSDictionary in array {
let name = friend.valueForKey("name") as! String
frindsFromGlobal.append(name)
count++
}
}
}
答案 1 :(得分:3)
从v2.0 /me/friends
只会返回正在使用您的应用的朋友。
因此,在您的情况下,您在developer.facebook.com中创建的应用程序未经您的任何朋友授权或使用
此外,您必须获得每个用户的user_friends
权限