我正在使用最新的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!");
}
}];
谁能告诉我有什么问题吗? 我想你可能已经弄清楚了,但这可能是因为在openGraphObjectForPostWithType调用类型应该是对象(FunTune),而不是动作(listen_to)
我还注意到,你使用的previewPropertyName"FunTune"是不同的,然后"FunTone"你保存它。