2014-04-04 50 views

回答

1

picture参数需要一个有效的网址 @ “我/饲料”:

-(void)postOnFacebook 
{ 
if (FBSession.activeSession.isOpen) 
    [self postOnWall]; 
else 
{ 
    [FBSession openActiveSessionWithPublishPermissions:[NSArray arrayWithObjects:@"publish_actions", nil] 
             defaultAudience:FBSessionDefaultAudienceEveryone 
              allowLoginUI:YES 
            completionHandler:^(FBSession *session, 
                 FBSessionState status, 
                 NSError *error) 
    { 
     if (error) 
      NSLog(@"Login failed"); 
     else if (FB_ISSESSIONOPENWITHSTATE(status)) 
      [self postOnWall]; 
    }]; 
}; 
} 

- (void)postOnWall 
{ 
FBRequestConnection *newConnection = [[FBRequestConnection alloc] init]; 

FBRequestHandler handler = 
^(FBRequestConnection *connection, id result, NSError *error) { 
    [self requestCompleted:connection forFbID:@"me" result:result error:error]; 
}; 

NSMutableDictionary *params = [[NSMutableDictionary alloc] initWithObjectsAndKeys: 
           @"Test", @"message", 
           @"www.google.com", @"link", 
           [UIImage imageNamed:@"temp.png"], @"picture", 
           @"description", @"description", 
           nil]; 

FBRequest *request=[[FBRequest alloc] initWithSession:FBSession.activeSession graphPath:@"me/feed" parameters:params HTTPMethod:@"POST"]; 
[newConnection addRequest:request completionHandler:handler]; 
[requestConnection cancel]; 
requestConnection = newConnection; 
[newConnection start]; 
} 
0

你应该使用graphPath:@ “我/照片”,而不是graphPath。有关更多信息,请参阅here

如果您有图片数据,那么您首先必须部署该图片并生成该图片的链接,然后将其提供给picture url

或者,您可以先使用/photos在Facebook上发布图像,然后在/feed中使用该图像。

希望有所帮助。祝你好运!

+0

这是不正确的答案。如果你愿意的话,你甚至可以用'feed'添加图片! –

相关问题