我正试图在朋友的墙上发布消息。但它不适用于我的以下代码,
NSMutableDictionary* params = [NSMutableDictionary dictionary];
[params setObject:@"Some text" forKey:@"user_message_prompt"];
[params setObject:@"another text" forKey:@"action_links"];
[facebook requestWithGraphPath:@"****FB ID here *****/feed" andParams:params andHttpMethod:@"POST" andDelegate:self];
我尝试了很多方法来解决它,但找不到解决方案。请告诉我在我的代码中我做错了什么。我需要快速帮助来解决。
答案 0 :(得分:0)
这就是我将消息推送到朋友Facebook墙的方式:
在你的.h文件中:
#import "FBConnect.h"
#import "FBRequest.h"
#import "FBLoginButton.h"
....
Facebook* _facebook;
NSArray* _permissions;
...
@property (readonly) Facebook *facebook;
在您的.m文件中:
@synthesize facebook = _facebook;
在viewDidLoad
:
_permissions = [[NSArray arrayWithObjects:@"user_photos",@"user_videos",@"publish_stream",@"offline_access",@"user_checkins",@"friends_checkins",@"email",@"user_location" , @"read_stream", @"read_friendlist",nil] retain];
_facebook = [[Facebook alloc] initWithAppId:kAppId];
SBJSON *jsonWriter = [[SBJSON new] autorelease];
static NSString* kAppId = @"your app key";
NSDictionary* actionLinks = [NSArray arrayWithObjects:[NSDictionary dictionaryWithObjectsAndKeys:@"your title",@"text",@"http://itunes.apple.com/us/app/facts!/id434894484?l=de&ls=1&mt=8",@"href", nil], nil];
NSString *actionLinksStr = [jsonWriter stringWithObject:actionLinks];
NSDictionary* attachment = [NSDictionary dictionaryWithObjectsAndKeys:
@"Title of the post", @"name",
@"Caption of the post", @"caption",
@"Some description", @"description",
nil];
NSString *attachmentStr = [jsonWriter stringWithObject:attachment];
NSMutableDictionary* params = [NSMutableDictionary dictionaryWithObjectsAndKeys:
kAppId, @"api_key",
@"Share on Facebook", @"user_message_prompt",
actionLinksStr, @"action_links",
attachmentStr, @"attachment",
@"your friends id", @"to",
nil];
[_facebook dialog: @"stream.publish" andParams:params andDelegate:self];
有一点必须清楚。当他真的在你的朋友列表中时,你只能发布到朋友的墙上,否则它将无效。我在我的个人资料中测试了代码并且它有效!