#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