如何使用 Facebook IOS SDK 对话框将照片发布到朋友的墙(时间线)?

Posted

技术标签:

【中文标题】如何使用 Facebook IOS SDK 对话框将照片发布到朋友的墙(时间线)?【英文标题】:How to post a photo to friend's wall (timeline) using Facebook IOS SDK dialog? 【发布时间】:2014-02-15 19:24:21 【问题描述】:

如何将照片发布到朋友的墙上,就像使用 facebook 网站发布照片一样(使用朋友墙顶部的“发布”表单并切换到“照片”选项卡)。结果应该是这样的:

我知道如何使用[FBWebDialogs presentFeedDialogModallyWithSession..]@"to" 参数将简单的帖子发布到朋友的墙上。但是有什么方法可以准确地发布一张照片(带有大缩略图)?

【问题讨论】:

【参考方案1】:

移除通过 API 发布到朋友时间线的功能 我们发现,通过 API (stream.publish) 在朋友的墙上发布内容会导致用户不满意(隐藏内容、阻止应用)的高发率。迁移期过后,将不再允许通过 stream.publish 将内容发布到朋友的时间线。请使用Feed Dialog for posting

// only supports passing a single image
NSArray* images = @[
@@"url": [UIImage imageNamed:@"my-awesome-meal-photo.jpg"], @"user_generated" : @"true" 
];

id<FBOpenGraphAction> action = (id<FBOpenGraphAction>)[FBGraphObject graphObject];
[action setObject:@"https://example.com/cooking-app/meal/Lamb-Vindaloo.html"   forKey:@"meal"];
[action setObject:images forKey:@"image"];

[FBDialogs presentShareDialogWithOpenGraphAction:action
                                  actionType:@"fbsdktoolkit:cook"
                         previewPropertyName:@"meal"
                                     handler:^(FBAppCall *call, NSDictionary *results,    NSError *error) 
                                         if(error) 
                                             NSLog(@"Error: %@", error.description);
                                          else 
                                             NSLog(@"Success!");
                                         
                                     ];

【讨论】:

我可以使用[FBWebDialogs presentFeedDialogModallyWithSession..]在朋友的墙上发帖。见this。我写过它。 这里是post via feed dialog的链接 你能告诉应用程序的设置吗?当我使用此代码时,发布按钮为灰色。我该怎么办? @python 什么是灰色的? facebook 分享对话框未打开或其他。请清除您的问题。最好贴个截图。

以上是关于如何使用 Facebook IOS SDK 对话框将照片发布到朋友的墙(时间线)?的主要内容,如果未能解决你的问题,请参考以下文章

Facebook ios sdk 语言

如何使用 facebook ios sdk 发出好友请求?

应用请求对话框中的问题(Facebook iOS SDK)

Facebook iOS SDK 分享对话框 - 在朋友的墙上分享

Facebook SDK 3.5 - iOS 5 上的共享对话框

Facebook iOS SDK 3.5.1 好友请求对话框在关闭时崩溃