我遵循了关于使用 iOS 版 Facebook SDK 发布自定义 Open Graph 故事的教程:https://developers.facebook.com/docs/ios/open-graph/
我还在这里阅读了有关灵活句子结构的文档:https://developers.facebook.com/docs/opengraph/creating-custom-stories/#variations
我的问题是,我在代码中如何以及在何处指定要使用的特定句子结构?我想发布“John Doe 煮了牛排”而不是“John Doe 煮了一顿饭”。我想使用一对一的句子结构而不是一对一的无对象标题结构。
// Create an object
id<FBGraphObject> object =
[FBGraphObject openGraphObjectForPostWithType"myapp:meal"
title"Steak"
image"http://i.imgur.com/g3Qc1HN.png"
url"https://example.com/link/"
description"Juicy and medium-rare"];
// Create an action
id<FBOpenGraphAction> action = (id<FBOpenGraphAction>)[FBGraphObject graphObject];
// Link the object to the action
[action setObjectbject forKey"meal"];
// Check if the Facebook app is installed and we can present the share dialog
FBOpenGraphActionShareDialogParams *params = [[FBOpenGraphActionShareDialogParams alloc] init];
params.action = action;
params.actionType = @"myapp:cook";
// If the Facebook app is installed and we can present the share dialog
if([FBDialogs canPresentShareDialogWithOpenGraphActionParams:params])
{
// Show the share dialog
[FBDialogs presentShareDialogWithOpenGraphAction:action
actionType"myapp:cook"
previewPropertyName"recipe"
handler:
^(FBAppCall *call, NSDictionary *results, NSError *error)
{
if(error) {
// There was an error
NSLog(@"Error publishing story: %@", error.description);
} else {
// Success
NSLog(@"result %@", results);
}
}];
}
Best Answer-推荐答案 strong>
我也在试图弄清楚这一点,这就是我到目前为止理解的原因:
- 默认情况下,所有帖子都以过去时态发布。 “用户名吃了披萨”
如果你想使用现在时,你必须像这样设置“end_time”属性:
[action setEnd_time"2014-03-08T23:23:23"];// future 的日期
这将在用户的时间轴上看起来像“用户名正在吃披萨”,并且会继续显示,直到 end_time 指定的日期到达。
我认为我目前遇到的时区可能存在问题,因此如果您需要处理不同的时区,请务必小心。
根据文档,“expires_in”属性是“end_time”的快捷方式,但您可以使用秒增量,而不是使用 datime 对象,例如“这是现在时态,直到 500 秒过去,因为它是已发布”,但我无法完成这项工作(帖子总是显示为过去时)
[action setExpires_time"500"];
所有其他灵活的句子结构都由 Facebook 管理,您无法控制何时显示它们。例如,如果您的应用的两个用户共享其中的内容,它将在 friend 的时间线上显示“user1 和 user2 正在吃披萨”之类的内容。
如果您发现其他内容,请更新您的帖子
关于ios - 如何为我的自定义 Open Graph 故事选择要发布的灵活句子结构?,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/21923905/
|