我正在使用facebook ios api,如果用户点击某些内容,我想为用户发布状态。
问题是我想在不使用FBDialog的情况下这样做而且我没有找到任何这样做 - 我只找到了方法:
[[FBRequest requestWithDelegate:self] call:@"facebook.fql.status" params:params];
但是这个方法不再在API中使用了。
答案 0 :(得分:1)
他们使用Graph API取代了FBRequest,这非常容易使用,只需要这样的东西就可以在没有FBDialog的情况下发布(为了做到这一点你需要publish_stream权限):
NSMutableDictionary* params = [NSMutableDictionary dictionaryWithObjectsAndKeys:
kAppID, @"app_id",
@"http://developers.facebook.com/docs/reference/dialogs/", @"link",
@"http://fbrell.com/f8.jpg", @"picture",
@"Facebook Dialogs", @"name",
@"Reference Documentation", @"caption",
@"Using Dialogs to interact with users.", @"description",
nil];
[facebook requestWithGraphPath:@"/me/feed" andParams:params andHttpMethod:@"POST" andDelegate:self];
如果帖子成功发布,只需检查委托方法:
(void)request:(FBRequest *)request didLoadRawResponse:(NSData *)data;
(void)request:(FBRequest *)request didFailWithError:(NSError *)error;
答案 1 :(得分:0)
虽然从技术上讲,你可以通过图表API通过发布到具有publish_stream权限的/ me / feed来执行此操作,但是Facebook Platform Policy反对使用非用户生成的内容预填充消息文本。 Facebook弃用了对话框中的message参数:
此字段将在2011年7月12日被忽略。预先填写的消息 用户将键入的文本字段。符合Facebook 平台策略,您的应用程序可能只设置此字段 用户在工作流程的早期手动生成内容。最 应用程序不应该设置它。