2011-06-28 38 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/