【问题标题】:Sharing Facebook open graph action succeeds, but post isn't visible分享 Facebook 打开图表操作成功,但帖子不可见
【发布时间】:2015-09-26 00:42:59
【问题描述】:

我正在将旧版应用从 facebook iOS SDK 2.x 迁移到 3.x,但无法让我的打开图形对象成功共享。

这是我必须共享对象的代码:

NSMutableDictionary *properties = [@{
                                    @"og:type": @"my-app:my-object",
                                    @"og:title": @"Title",
                                    @"og:description": @"text",
                                    } mutableCopy];

if(photoUrl){
    FBSDKSharePhoto *photo = [FBSDKSharePhoto photoWithImageURL:[NSURL URLWithString:photoUrl] userGenerated:NO];
    properties[@"og:image"] = @[photo];
}

FBSDKShareOpenGraphObject* graphObject = [FBSDKShareOpenGraphObject objectWithProperties:properties];

FBSDKShareOpenGraphAction *action = [[FBSDKShareOpenGraphAction alloc] init];
action.actionType = @"my-app:my-action";
[action setObject:graphObject forKey:@"my-object"];

FBSDKShareOpenGraphContent *content = [[FBSDKShareOpenGraphContent alloc] init];
content.action = action;
content.previewPropertyName = @"my-object";

FBSDKShareAPI* shareAPI = [FBSDKShareAPI shareWithContent:content delegate:[ShareDelegate theShareDelegate]];

if(![shareAPI share]){
    NSLog(@"![shareAPI share]");
    onFail(nil);
}else{
    NSLog(@"Share succeeded");
    onFinish();
}

分享操作似乎成功了。使用此结果字典调用委托方法 -(void)sharer:(id<FBSDKSharing>)sharer didCompleteWithResults:(NSDictionary *)results

{
    completionGesture = post;
    postId = 1608774589402167;
}

但是帖子没有出现在测试用户的新闻提要中。此外,在https://developers.facebook.com 应用程序仪表板的open graph -> action types 部分,我看到以下错误消息:

Your Open Graph action failed to publish on any of the Platforms you submitted. Make sure the action is working properly by publishing the action with a test user before resubmitting.

已使用适用于 iOS 的 Facebook 2.x SDK 成功共享此图形操作。

失败点可能是什么?

【问题讨论】:

  • 检查测试用户的活动日志,看看帖子是否显示在那里。
  • 帖子显示在活动日志中,但不在时间线中 - 知道为什么吗?
  • Facebook iOS SDK 现在是第 4 版。我建议先升级到那个版本。其次,检查更新的文档(在动作上设置图像,而不是对象可能会改变)。此外,不保证会在人的时间线上发布,但如果成功,肯定会显示在活动日志中。
  • @sak 如果您不介意查看我最近提出的问题,我在对这些帖子使用保留的“保存”操作时遇到问题。

标签: ios facebook facebook-graph-api facebook-opengraph facebook-ios-sdk


【解决方案1】:

我不确定您是否仍然需要这里的答案,但要让操作显示在用户的时间线中,您需要在操作上设置键:

[action setString:@"true" forKey:@"fb:explicitly_shared"];

这也需要为您的自定义操作进行配置(页面底部的复选框)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-05-07
    • 1970-01-01
    • 2012-12-15
    • 2014-10-15
    • 2014-04-06
    • 2018-07-15
    • 2023-03-28
    • 1970-01-01
    相关资源
    最近更新 更多