使用默认对话框将图像上传到Facebook

时间:2012-05-02 16:31:51

标签: ios facebook dialog

我正在尝试使用Facebook上的iOS SDK将图像上传到Facebook。

要上传图片,我正在做以下事情:

- 将图像上传到私人服务器以获取图像URL。 - 使用“feed”打开Facebook对话框,以便将评论上传到Facebook墙。

我的目标是避免使用私人服务器上传图片并获取网址,以便直接从iPhone将图片上传到Facebook。

我一直在谷歌搜索,我找到了几种直接上传图像到Facebook的解决方案,但没有使用包含SDK的默认对话框。

是否可以使用FB对话框对象直接从设备上传图像?我不能让视图替换对话框。

提前致谢。

这是我在Facebook上发布的代码:

+(void)composeFacebookWithImageUrl:(NSString *)imageURL image:(UIImage *)image delegate:(id)delegate
{

    Facebook *_facebook;
    _facebook = [[[Facebook alloc] initWithAppId:kAppId andDelegate:delegate] autorelease];

    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:
                                @"Ragdoll", @"name",
                                @"The Ragdoll maker app", @"caption",
                                @"Share with your friends", @"description",
                                @"http://www.im2.es/", @"href", nil];

    NSString *attachmentStr = [jsonWriter stringWithObject:attachment];

    NSMutableDictionary* params = [NSMutableDictionary dictionaryWithObjectsAndKeys:
                                   @"Share on Facebook",  @"user_message_prompt",
                                   actionLinksStr, @"action_links",
                                   attachmentStr, @"attachment",
                                   @"touch",@"display",
                                   imageURL, @"picture",
                                   nil];

    [_facebook dialog:@"feed"
            andParams:params
          andDelegate:delegate];

}

感谢。

1 个答案:

答案 0 :(得分:1)

你看过ShareKit了吗?我正在使用它在我的应用程序中共享图像,效果很好。

https://github.com/ShareKit/ShareKit