簡體   English   中英

如何使用FBConnect對話框方法將UIImage發布到我的牆上?

[英]How to use FBConnect dialog method to post a UIImage to my wall?

注意:我已經到處尋找這些內容,並且有大量的示例如何通過對話框發布URL到圖像,還有一些示例如何將圖像數據直接發布到相冊,但是這些都沒有是我想要做的。)

我可以使用以下類似的代碼輕松發布存儲在網絡上的圖像:

NSMutableDictionary *params = [NSMutableDictionary dictionaryWithObjectsAndKeys:
        @"This is what I say about kittens!", @"message",
        @"Kittens!", @"name",
        @"I'm feeling fuzzy", @"caption",
        @"You, too, can feel fuzzy, with FuzzyKitten™", @"description",
        @"http://example.com/fuzzykitten.html", @"link",
        @"http://placekitten.com/200/150", @"picture",
        nil];

[facebook dialog: @"feed"
            andParams: params
            andDelegate: self];

一切正常。 問題是,我想替換:

        @"http://placekitten.com/200/150", @"picture",

與以下類似:

        [UIImage imageNamed: @"myImage.png"], @"picture",

當然,這是不對的。 所以我的問題是:如果我有UIImage形式的圖像,如何將其加載到參數字典中以傳遞給dialog方法?

謝謝!

編輯:這是一個沒有服務器的客戶端iPhone應用程序,因此,將圖像作為2部分過程的第1部分上傳到FB很好,但是我現在看不到如何找到上傳的圖像的URL。 再次感謝!

您無法將圖像直接上傳到牆上,而發布到牆上時,您只能將圖像鏈接到牆上。
因此,您需要先將UIImage上傳到某個地方。 您有2個選擇:
1.上傳到您的/某台服務器並發布鏈接到它的牆貼。
2.上載到Facebook相冊。 檢查圖形API的相關操作 ,這非常簡單。

編輯:您無法再獲取托管在Facebook CDN(可能還有其他CDN)中的圖像,因此,如果需要從對話框鏈接圖像,則應將其上傳到服務器上並從那里獲取永久鏈接

您可以使用ASIFormDataRequest並運行一個腳本,使用以下方式將文件上傳到服務器:

ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:url];

// Upload a file on disk
[request setFile:@"/Users/ben/Desktop/ben.jpg" withFileName:@"myphoto.jpg" andContentType:@"image/jpeg"
forKey:@"photo"];

然后,讓ASIFormDataRequest的響應將上傳的圖像的URL返回到您的應用程序。 您可以使用ASIFormDataRequest響應的事件來觸發Facebook圖像發布。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM