Facebook iOS SDK对话框参数
这可能是一个n00b问题,但并非如此。。。我在iPad应用程序中使用Facebook SDK时有点问题:当我使用Facebook iOS SDK对话框参数,facebook,ipad,ios,Facebook,Ipad,Ios,这可能是一个n00b问题,但并非如此。。。我在iPad应用程序中使用Facebook SDK时有点问题:当我使用[Facebook对话框:@“feed”和delegate:self]显示对话框时我看不到任何方法可以更改我想要共享的内容的标题、内容或URL 在他们的演示应用程序中,Facebook有以下代码: - (IBAction)publishStream:(id)sender { SBJSON *jsonWriter = [[SBJSON new] autorelease]; N
[Facebook对话框:@“feed”和delegate:self]显示对话框时代码>我看不到任何方法可以更改我想要共享的内容的标题、内容或URL
在他们的演示应用程序中,Facebook有以下代码:
- (IBAction)publishStream:(id)sender {
SBJSON *jsonWriter = [[SBJSON new] autorelease];
NSDictionary* actionLinks = [NSArray arrayWithObjects:[NSDictionary
dictionaryWithObjectsAndKeys: @"Always Running",@"text",@"http://itsti.me/",
@"href", nil], nil];
NSString *actionLinksStr = [jsonWriter stringWithObject:actionLinks];
NSDictionary* attachment = [NSDictionary dictionaryWithObjectsAndKeys:
@"a long run", @"name",
@"The Facebook Running app", @"caption",
@"it is fun", @"description",
@"http://itsti.me/", @"href", nil];
NSString *attachmentStr = [jsonWriter stringWithObject:attachment];
NSMutableDictionary* params = [NSMutableDictionary
dictionaryWithObjectsAndKeys:
@"Share on Facebook", @"user_message_prompt",
actionLinksStr, @"action_links",
attachmentStr, @"attachment",
nil];
[_facebook dialog:@"feed"
andParams:params
andDelegate:self];
}
但是,当我按下publishStream按钮时,对话框上不会显示任何字符串!:
有什么事我做得不对吗?在那个演示应用程序中,我所做的更改就是Facebook kAppId和URL方案。嗯。。我还没有使用过这个示例应用程序,但是如果你想在墙上发布一些东西,我想你需要做一个帖子。请在此处查看此问题和我的答案:
总而言之,以下是我使用的方法:
- (void)requestWithGraphPath:(NSString *)graphPath
andParams:(NSMutableDictionary *)params
andHttpMethod:(NSString *)httpMethod
andDelegate:(id <FBRequestDelegate>)delegate;
在[user\u id]
的墙上发表评论。我也遇到了同样的问题。
这就是我找到的解决方案:以这种方式更改代码:
[_facebook dialog:@"stream.publish"
andParams:params
andDelegate:self];
使用stream.publish而不是feed。我意识到这已经得到了回答,但我发现这是正确的答案。它遵循FB所做的。图像和/或链接实际显示在对话框中stream.publish
没有为我做那个更改。此外,页面还显示stream.publish
是旧的
NSMutableDictionary* params = [NSMutableDictionary dictionaryWithObjectsAndKeys:
@"http://developers.facebook.com/docs/reference/dialogs/", @"link",
@"http://fbrell.com/f8.jpg", @"picture",
@"Facebook Dialogs", @"name",
@"Reference Documentation", @"caption",
@"Dialogs provide a simple, consistent interface for apps to interact with users.", @"description",
@"Facebook Dialogs are so easy!", @"message",
nil];
[_facebook dialog:@"feed"
andParams:params
andDelegate:self];
太棒了,谢谢!你是怎么发现你需要stream.publish而不是feed的?嗯。当我尝试这个时,Facebook对话框返回并声明“h”是不允许的。。。不管h是什么(正如@MrRogers所指出的,stream.publish API已被弃用。您应该改为遵循他的方法。@dbfranz:这已经过时。不再工作。改为遵循罗杰斯先生的答案。问题是使用对话框:
而不是后台requestWithGraphPath:
方法。这是正确的答案。stream.publish已注明日期。提要正确,但t示例错误。对话框出现,但消息为空。文档说“消息”字段现在被忽略:愚蠢的是他们没有为此更新示例。谢谢提醒。@Rogers先生,我有一个相关的(但不完全相同的)我想你可能知道答案的问题。你介意看一下吗?我可以使用UIImage而不是HTTP url来显示图片吗?
NSMutableDictionary* params = [NSMutableDictionary dictionaryWithObjectsAndKeys:
@"http://developers.facebook.com/docs/reference/dialogs/", @"link",
@"http://fbrell.com/f8.jpg", @"picture",
@"Facebook Dialogs", @"name",
@"Reference Documentation", @"caption",
@"Dialogs provide a simple, consistent interface for apps to interact with users.", @"description",
@"Facebook Dialogs are so easy!", @"message",
nil];
[_facebook dialog:@"feed"
andParams:params
andDelegate:self];