Facebook Graph API для iphone

#iphone #facebook #facebook-graph-api

#iPhone #Facebook #facebook-graph-api

Вопрос:

проверьте это Facebook GraphAPI

Я использую этот Graph API. При каждом запуске этого приложения не отображается экран входа в систему.И я могу видеть результаты на консоли. Я хочу знать, как я могу сохранить результат метода в NSDictionary, чтобы отобразить его в TableView или какой-либо метке..Метод заключается в

 -(IBAction)getMeFeedButtonPressed:(id)sender {
FbGraphResponse *fb_graph_response = [fbGraph doGraphGet:@"me/feed" withGetVars:nil];
NSLog(@"getMeFeedButtonPressed:  %@", fb_graph_response.htmlResponse);
  

}

Заранее спасибо

Комментарии:

1. Перейдя по ссылке, первый комментарий на этой странице ‘!!ПРИМЕЧАНИЕ!!: этот проект больше не поддерживается. Официальный Facebook / iOS SDK можно найти здесь: github.com/facebook/facebook-iphone-sdk — есть ли причина, по которой вы используете старые библиотеки?

2. Указанная вами ссылка — FBConnect, а Graph API является новым, вот почему я его скачал. Я в замешательстве, что нового?

3. ссылка и что это

4. пользователь640780… хорошо, он не поддерживается, но не волнуйтесь, он работает

5. и что он показывает каждый раз?? успех ?? 🙂

Ответ №1:

Я сделал это, используя подобные вам материалы..

 NSString *customString=[NSString stringWithFormat:@"me/feed"];
NSLog(@"here responce is for %@",customString);

FbGraphResponse *fb_graph_response = [fbGraph doGraphGet:customString withGetVars:nil];
NSLog(@"getMeFeedButtonPressed:  %@", fb_graph_response.htmlResponse);


//parse our json
SBJSON *parser = [[SBJSON alloc] init];
NSDictionary *facebook_response = [parser objectWithString:fb_graph_response.htmlResponse error:nil];   
//  [facebook_response ]
[parser release];

//NSString *feed;
//  NSString *feed2;
NSMutableArray *feed =(NSMutableArray *) [facebook_response objectForKey:@"data"];

//  NSMutableArray *feed1=(NSMutableArray *) [feed valueForKey:@"type"];
NSLog(@"%@",feed);

int index;
NSString* strMessage;


for (index=0; index<[feed count]; index  ) {

    //NSLog(@"........%@",[feed objectAtIndex:2]);
    NSString* forTable=[feed objectAtIndex:index];

    NSString *tempString = [forTable valueForKey:@"type"];
    NSLog(@"--------%@",tempString);

    if([tempString isEqualToString:@"status"]){
        NSLog(@"do something with status");
        strMessage=[forTable valueForKey:@"message"];
        NSString* strTime   =[forTable valueForKey:@"created_time"];
        NSLog(@"n %@ n %@ ",strMessage,strTime);
        [friendsArray addObject:strMessage];

    }
    else if([tempString isEqualToString:@"link"]){
        NSLog(@"do something with link");
        strMessage=[forTable valueForKey:@"message"];
        NSString* nameStr   =[forTable valueForKey:@"name"];
        NSLog(@"n %@ n %@ ",strMessage,strTime);
        [friendsArray addObject:strMessage];
                    [nameArray addObject:nameStr];

    }
    else if([tempString isEqualToString:@"photo"]){
        NSLog(@"do something with photo");
        strMessage=[forTable valueForKey:@"link"];
        NSString* strTime   =[forTable valueForKey:@"created_time"];
        NSLog(@"n %@ n %@ ",strMessage,strTime);
        [friendsArray addObject:strMessage];
    }
    else if([tempString isEqualToString:@"video"]){
        NSLog(@"do something with video");
        strMessage=[forTable valueForKey:@"name"];
        NSString* strTime   =[forTable valueForKey:@"created_time"];
        NSLog(@"n %@ n %@ ",strMessage,strTime);
        [friendsArray addObject:strMessage];
    }

}       
NSLog(@"%d",[friendsArray count]);
    NSLog(@"%d",[friendsArray count]);
for(int i =0 ; i < [friendsArray count] ; i  )
{
    NSLog(@"nelement %d is :%@",i,[friendsArray objectAtIndex:i]);
}


FaceBookTable *detailViewController = [[FaceBookTable alloc] initWithNibName:@"FaceBookTable" bundle:nil];
// ...
// Pass the selected object to the new view controller.
detailViewController.dummyArray=friendsArray;
    detailViewController.dummyNameArray=nameArray;
[self.navigationController pushViewController:detailViewController animated:YES];
[detailViewController release];
  

после выполнения этого у вас будут все данные в Feed1. Теперь проанализируйте их в соответствии с вашими требованиями к тому, что вы хотите отобразить в своей таблице 🙂

Комментарии:

1. Выдача предупреждения ‘NSString’ может не отвечать на JSONVALUE

2. Хм .. в выводе на консоль нет никаких изменений. Я хочу отобразить этот вывод {id » «, …} в Tableview, как профиль пользователя на facebook

3. хорошо .. но теперь вы можете видеть организованный ввод-вывод в своей консоли, верно?? скажите мне, чтобы я мог рассказать вам больше

4. Да, организованный ввод-вывод уже был показан, и ваш код показывает тот же результат. Я хочу пользовательский интерфейс.

5. Я использовал другой ключ, и это работает, но отображение сообщений в tableview не относится к сообщениям моего профиля //: o