将UIImage与其他文本一起发布到facebook

时间:2011-02-02 15:42:17

标签: iphone facebook

我正在尝试使用以下代码在Facebook上发布图像。

FBStreamDialog* dialog ;
        if([FBSession session].isConnected)
            dialog = [[[FBStreamDialog alloc] initWithSession:[FBSession session]] autorelease]; 
        else
            dialog = [[[FBStreamDialog alloc] initWithSession:session] autorelease];

            dialog.attachment = [NSString stringWithFormat:@"{\"name\":\"%@\",\"media\":[{\"type\":\"image\",\"src\":\"%@\"}]}", strEventStatus,eventImg];                

        [dialog show];

除了src之外,媒体标签是否还有其他任何属性可以采用NSData的形式?我怎么发布图像呢?

3 个答案:

答案 0 :(得分:1)

当您链接图像的附件属性时,源应该是一个URL ..我不认为您可以使用附件发布UIImage。一个解决方案是您可以使用Web服务在服务器中发布图像然后在发布时提供该URL。

我不知道你正在使用哪个Facebook API .. 这就是我使用Facebook Graph API上传图像所做的工作

  UIImage *img  = [UIImage imageNamed:@"myImage.png"];

  NSMutableDictionary *params = [NSMutableDictionary dictionaryWithObjectsAndKeys:
                                 img, @"picture",
                                 nil];
  //facebook is a facebook Obj which I initialized before
  [facebook requestWithMethodName:@"photos.upload"
                         andParams:params
                     andHttpMethod:@"POST"
                       andDelegate:self];

答案 1 :(得分:0)

我不了解您正在使用的Facebook API,但看起来图片SRC会暗示图片已经存在于网络上。

您是否考虑过将图片上传到服务器并将图片的SRC用作网址?

我希望这有帮助!

答案 2 :(得分:0)

您可以直接选择UIimage并通过BuildSucceeded使用的代码上传,您不再需要将图片转发到服务器并通过网址链接。您也可以从UIimageview,相机或图书馆调用图像。