2013-01-22 22 views
9

मैं अपने सभी फेसबुक दोस्तों, जो अनुप्रयोग मैं सभी दोस्तों की सूची हो रही है का उपयोग कर रहे हैं की एक सूची प्राप्त करने के लिए कोशिश कर रहा हूँ के साथ जुड़े हुए दोस्त की सूची प्राप्त है, लेकिन मैं कैसे सभी दोस्तों फ़िल्टर करूं जो एप्लिकेशन का उपयोग करके कर रहे हैं?आईओएस फेसबुक एसडीके - ऐप

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); 

     } 
     NSArray *friendIDs = [friends collect:^id(NSDictionary<FBGraphUser>* friend) { 
      return friend.id; 
     }]; 

    }]; 

धन्यवाद।

+1

संभवतः http://stackoverflow.com/questions/2785093/facebook-friends-getappusers-using-graph-api –

उत्तर

7
तरीका यही

यह कैसे iOS5 +

FBRequest* friendsRequest = [FBRequest requestWithGraphPath:@"me/friends?fields=installed" parameters:nil HTTPMethod:@"GET"]; 
     [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); 

      } 
      NSArray *friendIDs = [friends collect:^id(NSDictionary<FBGraphUser>* friend) { 
       return friend.id; 
      }]; 

    }]; 
+0

से संबंधित है इस प्रकार मैंने अपने आखिरी ऐप पर किया। आप इस पर https://developers.facebook.com/tools/explorer परीक्षण कर सकते हैं –

1

आप FQL साथ यह कर सकते हैं। यह सीधे दोस्तों को जो एप्लिकेशन का उपयोग करने की सूची दे देंगे।

SELECT uid FROM user 
WHERE uid IN (SELECT uid2 FROM friend WHERE uid1 = ?) 
AND is_app_user = 1 
7

यह नवीनतम फेसबुक एपीआई 3.2 के लिए इस्तेमाल किया जा सकता के साथ काम करता है,

[FBRequestConnection startForMyFriendsWithCompletionHandler: 
    ^(FBRequestConnection *connection, id<FBGraphUser> friends, NSError *error) 
    { 
     if(!error){ 
      NSLog(@"results = %@", friends); 
     } 
    } 
]; 
2

"is_app_user" है कि आप जांच करने की आवश्यकता। के रूप में फेसबुक जिस तरह से आप मित्रों की सूची तक पहुँच सकते हैं बदल गया है

- (void)getFriends 
{ 

    NSString *query = @"select uid, name, is_app_user " 
    @"from user " 
    @"where uid in (select uid2 from friend where uid1=me())"; 
    NSDictionary *queryParam = 
    [NSDictionary dictionaryWithObjectsAndKeys:query, @"q", nil]; 
    // Make the API request that uses FQL 
    [FBRequestConnection startWithGraphPath:@"/fql" 
           parameters:queryParam 
           HTTPMethod:@"GET" 
          completionHandler:^(FBRequestConnection *connection, 
               id result, 
               NSError *error) { 
           if (error) { 
            DLog(@"Error: %@", [error localizedDescription]); 
            [self.delegate FBDidFailedLoadFriends:error]; 
           } else { 
            DLog(@"Result: %@", result); 
           } 
           DLog(@"%@",((FBGraphObject*)result)[@"data"]); 
          }]; 
} 
0

बंद कर दिया जाना चाहिए। अब तुम सब का उपयोग कर सकते एप्लिकेशन उपयोगकर्ताओं है।

संबंधित मुद्दे