繁体   English   中英

Facebook iOS SDK v4.0,获取好友列表

[英]Facebook iOS SDK v4.0, get friends list

好像Facebook iOS SDK v4.0有很多更改。 登录后,我尝试获取用户的朋友列表。 我认为这与FBSDKGraphRequestConnection有关,但我不确定如何使用。

另外,如果我只想结识使用我的应用程序的朋友,facebook sdk是否支持?

谁能举一些例子? 谢谢!

FBSDKGraphRequest *friendsRequest = 
    [[FBSDKGraphRequest alloc] initWithGraphPath:@"me/friends"
                                      parameters:parameters];
FBSDKGraphRequestConnection *connection = [[FBSDKGraphRequestConnection alloc] init];
[connection addRequest:friendsRequest
     completionHandler:^(FBSDKGraphRequestConnection *innerConnection, NSDictionary *result, NSError *error) {
         ...
     }];
// start the actual request
[connection start];

这显示了如何处理响应:

[[[FBSDKGraphRequest alloc] initWithGraphPath:@"me/friends" parameters:nil]
 startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection, id result, NSError *error)
{
     if (!error)
     {
        NSArray * friendList = [result objectForKey:@"data"];
        for (NSDictionary * friend in friendList)
        {
            NSLog(@"Friend id: %@", friend[@"id"]);
            NSLog(@"Friend name: %@", friend[@"name"]);             
        }
    }
}];

我使用下面的代码获取朋友列表

self.graphrequest = [[FBSDKGraphRequest alloc] initWithGraphPath:@"me/taggable_friends?limit=100"
                                                 parameters:@{ @"fields":@"id,name,picture.width(100).height(100)"}];
[self.graphrequest startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection, id result, NSError *error) {
    if (!error) {
        self.resultsArray = result[@"data"];
        [self.fbTableView reloadData];
        [self.fbTableView setHidden:NO];
    } else {
        NSLog(@"Picker loading error:%@",error.userInfo[FBSDKErrorLocalizedDescriptionKey]);
    }
}];

您可以使用limit关键字限制朋友的数量。例如:limit = 100

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM