获取用户的朋友列表ios

时间:2016-04-27 12:36:21

标签: ios objective-c

我想获取用户的Facebook好友列表,我正在使用此代码。但它正在发送空数组。

是否需要获得许可吗?

NSMutableDictionary* parameters1 = [NSMutableDictionary dictionary];
    [parameters1 setValue:@"email,friends" forKey:@"fields"];

    FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc]
                                  initWithGraphPath:@"/me/friends"
                                  parameters:parameters1
                                  HTTPMethod:@"GET"];
    [request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection,
                                          id result,
                                          NSError *error) {
          NSLog(@"%@",result);
        // Handle the result
    }];

3 个答案:

答案 0 :(得分:0)

根据Facebook的更新政策,您无法直接获取Facebook中的朋友列表。

您只能获取使用您要求此权限的相同应用的朋友。

以下是详细解释:https://stackoverflow.com/a/23417628/1637677

答案 1 :(得分:0)

您需要以下权限 taggable_friends: - Taggable Friends

使您的应用能够代表非应用的管理员,开发人员或测试人员来调用Taggable Friends API。

Taggable Friends API会返回所有朋友(使用应用的朋友和不使用应用的朋友)的列表,这些朋友可以在应用发布的故事中进行标记或提及。 API会返回每个朋友的姓名,个人资料图片的网址以及可用于在状态,链接,照片,视频或Open Graph操作中对其进行标记的标记令牌。

默认情况下,您只能为应用的信息中心的角色部分中列出的人员调用Taggable Friends API。这是为了让您开发和测试集成。如果您要在应用的公开版本中使用Taggable Friends API,则必须提交此功能以供审核。 常见用法

让人们在您的应用发布的故事中标记他们的朋友。这附加了“朋友姓名”和“#39;到用户消息的末尾。

让人们在您的应用发布的故事中提及他们的朋友。提及仅适用于使用某些附加功能的Open Graph故事。了解更多。

将某人的朋友用于标记或提及之外的任何其他目的

user_friends: - 提供对同时使用您的应用的朋友列表的访问权限。默认情况下会批准此权限。

您只能通过以上两种方式访问​​您的朋友。

答案 2 :(得分:0)

您可以使用此方法获取信息

[[[FBSDKGraphRequest alloc] initWithGraphPath:@"me" parameters:@{@"fields": @"id, name, link, first_name, last_name, picture.type(large), email, birthday, bio ,location ,friends ,hometown , friendlists"}]
                 startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection, id result, NSError *error) {


    }