0

我想使用FBDialog来自 Facebook SDK 的,但它似乎只需要一个 URL 来发布图像。有没有什么方法可以UIImage使用 上传到 Facebook,FBDialog 而无需在发布之前将图像上传到另一台服务器?

我目前正在使用它UIImage在 facebook 上发布:

NSMutableDictionary *params = [NSMutableDictionary dictionaryWithObjectsAndKeys:
                               @"A caption", @"caption",
                               nil];
[_facebook requestWithMethodName:@"photos.upload" andParams:params andHttpMethod:@"POST" andDelegate:nil];

它工作得很好,但我需要FBDialog. 有什么办法可以用 做同样的事情FBDialog吗?

任何帮助表示赞赏。

4

3 回答 3

2

不,要发布UIImage您不能直接附加它。这里有两种方法:

  1. 太上传到服务器,然后将 URL/请求/查询带到该服务器
  2. (更实用的方法)上传到你的 Facebook 用户的相册,然后发布那张图片

有关更深入的教程,请查看此链接:

官方 Facebook iOS 教程

这是一个类似的问题,有一个很好的答案,提供了分步教程

于 2012-06-13T08:14:55.127 回答
2

从 Facebook iOS SDK v3.13+ 开始,您可以presentShareDialogWithPhotoParams直接从设备上传图像。请参见下面的示例代码:

FBShareDialogPhotoParams *photoParams = [FBShareDialogPhotoParams new];
UIImage *screenshot = //image you want to share.
photoParams.photos = @[screenshot];
[FBDialogs presentShareDialogWithPhotoParams:photoParams
                                 clientState:nil
                                     handler:^(FBAppCall *call, NSDictionary *results, NSError *error) {

                                     }];
于 2014-05-01T06:12:27.120 回答
1
- (void) feedDialogButtonClicked {
NSMutableDictionary *params = 
    [NSMutableDictionary dictionaryWithObjectsAndKeys:
        @"Testing Feed Dialog", @"name",
        @"Feed Dialogs are Awesome.", @"caption",
        @"Check out how to use Facebook Dialogs.", @"description",
        @"http://www.example.com/", @"link",
        @"http://fbrell.com/f8.jpg", @"picture",
        nil];  
[facebook dialog:@"feed"
        andParams:params
      andDelegate:self];

}

来自 Rohan 发布的官方 Facebook iOS 教程

于 2012-06-13T08:27:29.813 回答