使用 iOS 版 Facebook SDK 发布故事时未上传图片

Posted

技术标签:

【中文标题】使用 iOS 版 Facebook SDK 发布故事时未上传图片【英文标题】:Image not uploaded when publishing a story using Facebook SDK for iOS 【发布时间】:2014-08-13 09:28:46 【问题描述】:

我正在关注使用分享对话框发布故事的官方 FB 教程:

https://developers.facebook.com/docs/ios/open-graph#sharedialog

我已经配置了我的 facebook 应用程序,并在操作上设置了正确的功能(就像在教程中描述的那样)。我每一步都检查了两次和三次。

故事已发布,但图片未出现在帖子中。当分享对话框出现时,显示图片的缩略图,然后我点击“发布”,我可以看到指示上传的进度条,但最后我得到一个没有图片的帖子。

我下载了教程应用程序源,编译它,我得到了相同的结果 (https://github.com/fbsamples/ios-howtos/tree/master/FBOGSampleSD)。

【问题讨论】:

嘿@user2076108 检查我的答案。,,, 我使用的是分享对话框,而不是提要对话框,AFAIK 不支持图片上传。 @BhaveshNai:你不需要让用户知道你已经回答了一个问题,因为如果他们收到了答案,系统会自动通知 OP。此类评论是不必要的,版主可能会删除。有关 cmets 的更多信息,请查看help centre。 【参考方案1】:

看起来这可能与此错误有关:https://developers.facebook.com/bugs/456750217796696/

已修复,但我认为更新尚未发布。

与此同时,您可以做的一件事是在将操作发送到共享对话框之前将图像从您的应用程序上传到 Facebook 的暂存服务器,但这会迫使您通过您的应用程序从用户那里获得发布权限,这无疑是不是很好,但至少可以让你的图片放在那里。

[FBRequestConnection startForUploadStagingResourceWithImage:image completionHandler:^(FBRequestConnection* connection, id result, NSError* error) 
    if(!error)
    
        [newImageInfo setObject: [result objectForKey:@"uri"] forKey: @"url"];
        [fbObject setObject: @[newImageInfo] forKey: @"image"];

        // Setup action with fbObject property, then send action to native Share Dialog
    
    else
    
        NSLog(@"[ERROR] Could Not Stage Image: %@", error.description);
    
];

【讨论】:

以上是关于使用 iOS 版 Facebook SDK 发布故事时未上传图片的主要内容,如果未能解决你的问题,请参考以下文章

使用 iOS 版 Facebook SDK 3.5 时更改键盘外观

更新 iOS 版 Facebook SDK

我是 iOS 版 Facebook SDK 的新手。我想向 Facebook 上的朋友发送邀请

如何在 iOS 版 Facebook SDK 中定义“GeoPoint”属性

Facebook iOS SDK 返回错误“com.facebook.sdk 错误 4”

Facebook ios sdk 语言