iOS 8.3 Facebook SDK 4.1 Получение фотоальбома профиля пользователя

Я использую последнюю версию 4.3 Facebook SDK в своем коде. Моя задача состоит в том, что я должен получить полный альбом пользователя с именем «Изображения профиля» по следующему пути Facebook: «Профиль пользователя» -> «Фотографии» -> «Альбомы» -> «Изображения профиля».

Для этого я передал разрешение для @"public_profile", @"user_photos" и т.д...

Я просмотрел много ссылок на SO и перепробовал почти все подходящие ответы, предложенные фанатами.

Я пробовал вещи, указанные здесь, здесь и многое другое...

В моем текущем сценарии я получаю изображение профиля пользователя (текущее), но мне нужны все изображения, хранящиеся в его альбоме изображений профиля. Если у кого-то есть идеи, пожалуйста, помогите.


person Jitendra Tiwari    schedule 28.05.2015    source источник
comment
Первая ссылка в StackOverflow уже содержит ответ!   -  person Tobi    schedule 28.05.2015
comment
см. мой ответ может помочь.......stackoverflow.com/questions/30207465/   -  person Maulik shah    schedule 08.10.2015


Ответы (2)


Насколько я знаю, это невозможно сделать в одном запросе. Вам нужно будет сделать две вещи:

  1. Запросите альбомы пользователя и проанализируйте результаты для альбома «Изображения профиля».

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

Это возвращает 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

Вы получите объект JSON с изображениями профиля. Возможно, вам нужно пролистнуть результаты, если фотографий больше 25.

person Tobi    schedule 28.05.2015
comment
Что делать, если альбом «Изображения профиля» недоступен в первом наборе результатов, и снова потребуется несколько вызовов для разбивки по страницам и проверки изображений профиля! - person Tushar; 28.05.2015
comment
Да, но другого выхода нет. Разбивка на страницы также проста, и я уже писал об этом в своем ответе. Читайте документы. Вы ничего не написали о решении в своем ответе, у вас действительно есть другая идея? - person Tobi; 28.05.2015

сначала войдите в 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");
             }];
person Jitendra Tiwari    schedule 05.09.2016