2014-04-22 7 views
2

다른 참가자의 이름과 이미지를 Facebook Inbox처럼 TableView에 표시해야합니다. 이 fql 쿼리를 사용하여 수신자를 얻습니다.Fql이 포함 된 Facebook받은 편지함

- (void)readInbox { 

    NSString *query = 
    [NSString stringWithFormat:@"SELECT recipients,thread_id FROM unified_message where thread_id IN (SELECT thread_id FROM unified_thread WHERE folder = 'inbox')"]; 

    NSMutableDictionary * params = [NSMutableDictionary dictionaryWithObjectsAndKeys: 
            query, @"q", 
            nil]; 

    FBRequest *request = [FBRequest requestWithGraphPath:@"/fql" 
               parameters:params 
               HTTPMethod:@"GET"]; 

    [request startWithCompletionHandler:^(FBRequestConnection *connection, id result, NSError *error) { 

     NSLog(@"Result: %@", result); 
    }]; 
} 

결과는이

data = ({ 
    recipients = ({ 
     email = "****@facebook.com"; 
     name = "*****"; 
     "user_id" = 6 * * * ; 
    }, { 
     email = "****@facebook.com"; 
     name = "******"; //This is me 
     "user_id" = * * * ; 
    }); 
    "thread_id" = "t_mid.1371470061934:11b440f1722f8fc977"; 
}, 

같은 것을 내가 보여주고 싶은 것을이 정확입니까?
fql을 사용하여 다른 사람 (나 이외)을 어떻게 얻습니까?

답변

1

FQL 쿼리를 사용하여 JSON 데이터를 받게됩니다. 그것을 파서 Mutable Array에 저장하십시오.

다음 쿼리를 사용하여 자신의 사서함에서 사용자의 nameid을 얻을 수 있습니다.

SELECT name, uid FROM user WHERE uid IN (SELECT author_id FROM message WHERE thread_id IN (SELECT thread_id FROM thread WHERE folder_id = 0))

이제 첫 번째 인덱스는 당신이 될 것입니다. 원하는 경우 어레이에서 제거하십시오.

+0

고마워요! 정확히 내가 필요한 것. – Machete