2010-07-15 60 views
0

我想知道這段代碼究竟做了什麼。此代碼如何使用Facebook Connect將圖像發佈到牆上?

- (void)dialogDidSucceed:(FBDialog*)dialog { 
//[self doSomethingExciting]; 
FBStreamDialog *dialog2 = [[[FBStreamDialog alloc] init] autorelease]; dialog.delegate = self; 
dialog2.userMessagePrompt = @"Example prompt"; 
dialog2.attachment = @"{\"name\":\"Facebook iPhone SDK\"," 
"\"href\":\"http://developers.facebook.com/connect.php?tab=iphone\"," 
"\"caption\":\"Caption\",\"description\":\"Description\"," 
"\"media\":[{\"type\":\"image\"," 
"\"src\":\"http://img40.yfrog.com/img40/5914/iphoneconnectbtn.jpg\"," 
"\"href\":\"http://developers.facebook.com/connect.php?tab=iphone/\"}]," 
"\"properties\":{\"another link\":{\"text\":\"Facebook home page\",\"href\":\"http://www.facebook.com\"}}}"; 
// replace this with a friend's UID 
// dialog.targetId = @"999999"; 
[dialog2 show]; 

}

當我運行它,它問我,如果我想在我和我的朋友的牆壁發佈,但是我不知道這將如何看的牆壁上。它也會發布到用戶牆上,然後在他們的朋友中顯示流入的流,比如「最近期」,還是實際上發佈在每個朋友牆上?

謝謝

+0

@Brad:你有編輯我的問題嗎?新的問題不是我的問題:P我同意我的問題沒有很好地陳述,但我想知道哪個部分做了什麼。我現在知道了。 – jarryd 2010-07-15 20:13:15

+0

他改變了標題,使其更清晰。 「這個代碼會做什麼」並不能真正幫助其他人發現問題,如果他們有同樣的問題。 – 2010-07-15 20:24:39

+0

我知道,但在這些帖子中沒有回答這個問題。 :) – jarryd 2010-07-15 20:33:00

回答

1

是的。您正在發佈圖片到他們的流。

附件是JSON的一個轉義序列,Facebook將拾取並附加一個圖像(它看起來像一個鏈接)。

用戶將看到的圖像/鏈接預先配置爲牆貼,他們將有一個文本框輸入他們自己的文本,如用戶消息提示。

它是否顯示在朋友流取決於他們的設置,但最終,這是一個新聞流發佈,因此有可能出現在他們的主頁上。

+0

有沒有辦法設置字段要求的用戶文本?該對話框會提示用戶和用戶輸入文字?我想爲他們設置文字。 – jarryd 2010-07-15 17:03:06

+0

我的猜測是否定的。我不知道,我從來沒有必要這樣做。 – 2010-07-15 17:18:01

+0

謝謝。所以如果我想設置描述和標題來分離NSString值,我會怎麼做?作爲文本全部在「」例如「\」caption \「:\」Caption \「,\」description \「:\」Description \「 – jarryd 2010-07-15 17:32:54

1

其他答案已經解釋了代碼的作用。

這只是一個提示: 創建三個假FaceBook帳戶,並將它們連接在一起。 然後用它們來做你的測試。因此,您將確切知道發生了什麼,並在開發過程中進行所有測試,而不會丟失所有朋友。

+0

哈哈。酷。從未想過那。(3帳戶):P – jarryd 2010-07-15 16:43:04