2011-06-28 39 views
4

我已经设法使用所提供的FB文档,很好地将Facebook iOS SDK实施到我的项目中。iOS SDK发布链接并显示缩略图

我的应用程序的FB集成非常简单:Facebook共享按钮,它允许用户通过用户提供的评论发布链接到他们的FB墙。没有什么惊天动地或破土而出。

但是,我想更进一步。我没有链接显示的缩略图(即我自己的图片网址),但我希望Facebook自动选择缩略图。

与Facebook上的网络浏览器类似,如果您选择从CNN.com共享链接,Facebook会自动选择想要分享的页面的缩略图,并且它甚至会为您提供复选框“没有缩略图“。

从iOS对话框共享链接,我希望自动选择缩略图(大概是从您尝试共享的链接中生成的,即FB只是从页面抓取图像)。

这可能吗?同样,我不想在下面的'attachment'NSDictionary中显示带有图片URL的“图片”,因为我没有图片URL。我只想显示一个超链接,并让FB将链接发布到用户的墙上,并提供他们的评论,并让FB提供缩略图图像(与从Web浏览器发布时相似)。

基本上从堆栈溢出的代码是:

SBJSON *jsonWriter = [[SBJSON new] autorelease]; 

NSDictionary* actionLinks = [NSArray arrayWithObjects:[NSDictionary  
dictionaryWithObjectsAndKeys: @"Always Running", @"text", @"http://itsti.me/", @"href", 
nil], nil]; 

NSString *actionLinksStr = [jsonWriter stringWithObject:actionLinks]; 
NSDictionary* attachment = [NSDictionary dictionaryWithObjectsAndKeys: 
          @"a long run", @"name", 
          @"The Facebook Running app", @"caption", 
          @"it is fun", @"description", 
          @"http://itsti.me/", @"href", nil]; 

NSString *attachmentStr = [jsonWriter stringWithObject:attachment]; 
NSMutableDictionary* params = [NSMutableDictionary dictionaryWithObjectsAndKeys: 
          @"Share on Facebook", @"user_message_prompt", 
          actionLinksStr, @"action_links", 
          attachmentStr, @"attachment", 
          nil]; 

[_facebook dialog:@"stream.publish" andParams:params andDelegate:self]; 

回答

0

我不认为你必须张贴图片。此外,Facebook正在做的是获得Open Graph标签(为了这个目的,在web文档的开始处的元标签)。你应该能够简单地发布一个链接和一条消息,并且它会“lint” - 读取meta标签并发布该网页的图片,摘要等。

您可以尝试使用Open Graph图形操作而不是共享对话框。它会做更多你想要的东西.http://developers.facebook.com/docs/opengraph/