Ios Facebook';s";“打开图形消息”的消息传递;功能不断返回到我的应用程序
我正在试用Facebook的新功能,这意味着人们现在可以通过Facebook Messenger应用程序向朋友发送开放式图表故事 在我的例子中,我正在构建一个应用程序,人们可以在其中创建一个播放列表,然后邀请其他人为该播放列表贡献歌曲。因此,一个有趣的途径是能够通过Facebook Messenger向朋友发布一条开放的图形消息 我设置了一个创建动作、一个播放列表对象和一个创建播放列表故事 我在iOS应用程序中使用的代码与Facebook提供的示例非常接近: 正在创建播放列表对象:Ios Facebook';s";“打开图形消息”的消息传递;功能不断返回到我的应用程序,ios,facebook,facebook-graph-api,facebook-opengraph,Ios,Facebook,Facebook Graph Api,Facebook Opengraph,我正在试用Facebook的新功能,这意味着人们现在可以通过Facebook Messenger应用程序向朋友发送开放式图表故事 在我的例子中,我正在构建一个应用程序,人们可以在其中创建一个播放列表,然后邀请其他人为该播放列表贡献歌曲。因此,一个有趣的途径是能够通过Facebook Messenger向朋友发布一条开放的图形消息 我设置了一个创建动作、一个播放列表对象和一个创建播放列表故事 我在iOS应用程序中使用的代码与Facebook提供的示例非常接近: 正在创建播放列表对象: NSMuta
NSMutableDictionary<FBGraphObject> *object =
[FBGraphObject openGraphObjectForPostWithType:@"vibe-social-music:playlist"
title:@"Sample Playlist"
image:@"https://fbstatic-a.akamaihd.net/images/devsite/attachment_blank.png"
url:@"http://samples.ogp.me/616101581814728"
description:@""];
在messenger应用程序中调用“显示消息”对话框:
[FBDialogs
presentMessageDialogWithOpenGraphActionParams:params
clientState:nil
handler:^(FBAppCall *call, NSDictionary *results, NSError *error) {
if (error) {
//TODO: Handle errors
NSLog(@"error: %@", error);
} else {
NSLog(@"results: %@", results);
}
}];
正如我之前解释的,Facebook messenger应用程序会打开,但很快就会返回到我的应用程序
我在Info.plist文件中设置了Facebook凭据
有一点是,这一行动尚未得到Facebook的验证。这可能是个问题吗
否则,我不知道为什么它不会在Messenger应用程序中显示开放的图形故事,以及为什么它总是返回到我的应用程序
任何帮助都将不胜感激,谢谢 您能否确认在应用程序设置的“打开图”部分配置了自定义故事(而不仅仅是动作和对象类型) 此外,在
params
构造中,操作类型似乎缺少您的应用程序名称空间:即
FBOpenGraphActionParams *params = [[FBOpenGraphActionParams alloc]
initWithAction:action
actionType:@"vibe-social-music:create"
previewPropertyName:@"playlist"];
是的,在开放图中实现了一个自定义故事。您能否提供一个代码示例,说明actionType@“namespace:action”应该出现在何处?actionType与action有什么不同?创建FBOpenGraphActionParams实例的代码段中的action类型。我将编辑我的答案。谢谢;你能告诉我这个动作(和开放图表故事)是否需要公开/通过Facebook批准吗?或者,即使只是在测试环境中,这个故事也应该有效吗?只有“测试员”用户才能看到它的完整性吗?你的应用程序需要公开,并且在你公开发布应用程序之前,开放图故事需要得到批准。在此之前,只有被指定为该应用程序开发人员/测试人员的用户才能看到它。好的,它是固定的。它还部分与名称空间有关。
[FBDialogs
presentMessageDialogWithOpenGraphActionParams:params
clientState:nil
handler:^(FBAppCall *call, NSDictionary *results, NSError *error) {
if (error) {
//TODO: Handle errors
NSLog(@"error: %@", error);
} else {
NSLog(@"results: %@", results);
}
}];
FBOpenGraphActionParams *params = [[FBOpenGraphActionParams alloc]
initWithAction:action
actionType:@"vibe-social-music:create"
previewPropertyName:@"playlist"];