iOS 8.3 Facebook SDK 4.1检索用户的个人资料相册

时间:2015-05-28 05:41:25

标签: facebook facebook-graph-api ios8.3

我在我的代码中使用Facebook SDK最新版本4.3。我的任务是我必须从Facebook的以下路径获取名为Profile Pictures的用户的完整专辑:UserProfile-> Photos-> Albums->个人资料图片。

为了达到这个目的,我已经通过了@“public_profile”,@“user_photos”等的许可......

我搜索过SO&amp ;;的许多链接尝试了极客建议的几乎所有合适的答案。

我尝试了herehere以及其他更多内容......

在我目前的情况下,我正在获取用户个人资料图片(当前),但我需要存储在他的个人资料图片专辑中的所有图片。如果有人有任何想法,请帮助。

2 个答案:

答案 0 :(得分:0)

据我所知,在一个请求中无法做到这一点。你需要做两件事:

  1. 请求用户的相册,并解析相册“个人资料图片”的结果

    GET /me/albums?fields=id,name&locale=en_US

  2. 这会返回一个像这样的JSON:

    {
      "data": [
        {
          "id": "442898331243456464", 
          "name": "Profile Pictures", 
          "created_time": "2010-12-12T13:35:29+0000"
        }
        ...
      ], 
      "paging": {
        "cursors": {
          "after": "NDQyODk4MzMxMjQz", 
          "before": "MTAxNTA5MjQyNDQ4NDYyNDQ="
        }
      }
    }
    
    1. 抓住名为“个人资料图片”的相册的id,然后像这样请求photos边缘:

      GET /442898331243456464/photos

    2. 您将收到有关个人资料照片的JSON对象。如果有超过25张照片,您可能需要对结果进行分页。

答案 1 :(得分:0)

首先在facebook上登录后写下以下代码  你可以从Facebook获得用户个人资料照片。

  NSMutableDictionary* parameters = [NSMutableDictionary dictionary];
            [parameters setValue:@"id,name,email,picture" forKey:@"fields"];

            [[[FBSDKGraphRequest alloc] initWithGraphPath:@"me" parameters:parameters]
             startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection,
                                          id result, NSError *error)
            {
                NSLog(@"Your get the result here contain userid, name, email and picture");
             }];