Как получить список друзей для входа на Facebook с использованием FacebookSDK v3.21

Я пробую следующий код, чтобы получить список друзей, но я получаю тех друзей, которые используют приложение, мне нужно получить полный список друзей. код приведен ниже.

  [FBRequestConnection startWithGraphPath:@"/me/friends"
                             parameters:nil
                             HTTPMethod:@"GET"
                      completionHandler:^(
                                          FBRequestConnection *connection,
                                          id result,
                                          NSError *error
                                          ) {
                          NSLog(@"My Friend listed : is %@",result);
                          /* handle the result */
                      }];

4 ответа

С Facebook SDK 3.0 вы можете сделать это:

FBRequest* friendsRequest = [FBRequest requestForMyFriends];
[friendsRequest startWithCompletionHandler: ^(FBRequestConnection *connection,
                                  NSDictionary* result,
                                  NSError *error) {
    NSArray* friends = [result objectForKey:@"data"];
    NSLog(@"Found: %i friends", friends.count);
    for (NSDictionary<FBGraphUser>* friend in friends) {
        NSLog(@"I have a friend named %@ with id %@", friend.name, friend.id);
    }
}];

Вызов API Facebook теперь возвращает только друзей, которые использовали приложение. Таким образом, вы не можете получить весь список друзей, только друзья, которые также используют приложение.

Проверьте эту ссылку для получения дополнительной информации

https://developers.facebook.com/docs/graph-api/reference/v2.0/user/friends

https://developers.facebook.com/docs/apps/faq

Диалог запроса и invitable_friends не может быть и речи, поскольку вы говорите о приложении для iOS (а не об игре на холсте). Так что, согласно документации, это лучший вариант: https://developers.facebook.com/docs/ios/share/

Как вы получили, /me/friends возвращает друзей, которые используют приложение.

Из ссылок на документ в Facebook

  1. https://developers.facebook.com/docs/games/invitable-friends/v2.0
  2. https://developers.facebook.com/docs/games/requests/v2.0

использование @"/me/invitable_friends" вместо @"/me/friends"

ОБНОВЛЕНО

По состоянию на April 30th'2014 приложения могут получить только список друзей, которые также используют приложение, и вы должны запросить user_friends разрешение, как вы получаете сейчас. Для тех пользователей, которые никогда не заходили в ваше приложение раньше April 30th'2014 получит app_scoped_id вместо их реального идентификатора facebook.

Другие вопросы по тегам