2015-05-10 2 views
0

, поэтому я тщательно искал существующие вопросы на этом форуме, но все они устарели для Graph API 2.3. Я пытаюсь получить список друзей facebook для определенного идентификатора пользователя, и я знаю, что он вернет только тех, кто предоставил приложению одинаковые разрешения. Я использую следующий:Управление и хранение данных Facebook Friend с помощью API Facebook 2.3 в XCode

[[[FBSDKGraphRequest alloc] initWithGraphPath:coreData.userID parameters:nil] 
       startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection, id result2, NSError *error) { 
        if (!error) { 
        // NSLog(@"%@",coreData.userID); 

         NSArray *friends = [result2 objectForKey:@"data"]; 
         NSLog(@"%@ friends", friends[0]); 
         //NSLog(@"%@", friends); 
        } 
        else { 
         NSLog(@"Error"); 


        } 
}]; 

Я создавший соответствующие тестовые аккаунты которых являются друзья, так что должно работать, я просто возникаю проблемы интерпретаций result2, чтобы получить массив друзей идентификаторов в XCode 6?

Благодаря

+0

1) У вас заголовок может быть лучше. Это не связано с «xcode», а с «iOS». 2) Каковы значения для 'result2', которые вы получаете? Что работает, а что нет? Ваш вопрос неполный в настоящее время. – Roemer

+0

Следующие результаты регистрируют «(null) друзей». Аналогичная процедура работает точно при замене objectForKey: @ "data" на objectForKey: @ "id" и возвращает мой идентификатор пользователя. Из того, что я понимаю, для вызова API «/ {friendlist-id}» объект result2 должен иметь поля: id, name, list_type для всех авторизованных друзей пользователя (coreData.userID в моем случае). Поскольку звонок успешно возвращает мой идентификатор, я чувствую, что я не заселяю * друзей правильно? –

ответ

0

graphPath, что вы используете неправильно. Вы запрашиваете только идентификатор пользователя. Вы должны запросить край /friends, например. /{user-id/friends или, как сокращение, /me/friends (в данном случае «я» является псевдонимом для текущего пользователя предоставленного токена доступа).

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

Смотрите также пример фрагмента кода в документации /user/friends.

Смежные вопросы