无法将故事发布到Facebook

时间:2013-06-09 12:34:14

标签: ios objective-c facebook-opengraph facebook-stream-story fbdialogs

我正在使用最新的SDK并试图将故事发布到Facebook,但由于某种原因它不起作用。它仅在我尝试使用此代码发布时才起作用:

NSMutableDictionary<FBGraphObject> *action = [FBGraphObject graphObject];
action[@"funtone"] = @"http://samples.ogp.me/491689410900420";

[FBRequestConnection startForPostWithGraphPath:@"me/pelephoneil:listen_to"
                                   graphObject:action
                             completionHandler:^(FBRequestConnection *connection,
                                                 id result,
                                                 NSError *error) {
                                 // handle the result
                             }];

当我尝试使用此代码时,它无效:

id<FBGraphObject> listenObject =
[FBGraphObject openGraphObjectForPostWithType:@"pelephoneil:listen_to"
                                        title:@"FunTune"
                                        image:@"https://example.com/cooking-app/images/Lamb-Vindaloo.png"
                                          url:@"https://example.com/cooking-app/meal/Lamb-Vindaloo.html"
                                  description:@"text for sample to sample"];

id<FBOpenGraphAction> songAction = (id<FBOpenGraphAction>)[FBGraphObject graphObject];
[songAction setObject:listenObject forKey:@"FunTone"];

[FBDialogs presentShareDialogWithOpenGraphAction:songAction
                                      actionType:@"pelephoneil:listen_to"
                             previewPropertyName:@"FunTune"
                                         handler:^(FBAppCall *call, NSDictionary *results, NSError *error) {
                                             if(error) {
                                                 NSLog(@"Error: %@", error.description);
                                             } else {
                                                 NSLog(@"Success!");
                                             }
                                         }];

有人能告诉我这似乎是什么问题吗?

1 个答案:

答案 0 :(得分:2)

我希望你可能已经想到了这一点,但这可能是因为openGraphObjectForPostWithType调用中的类型应该是对象(FunTune),而不是action(listen_to)

我还注意到您使用“FunTune”的previewPropertyName与您保存的“FunTone”不同。