7
NSMutableDictionary *params = [NSMutableDictionary dictionaryWithObjectsAndKeys:
                               photoDescription, @"message",
                               image, @"image",
                               nil];


[facebook requestWithGraphPath:@"me/photos"
                                    andParams:params
                                andHttpMethod:@"POST"
                                  andDelegate:self];

これは、Facebookに画像をアップロードするために行ったことです。画像が FaceBook の「写真」に正常にアップロードされました。しかし、画像を FaceBook フィードに投稿したいと考えています。だから私は試しました、

[facebook requestWithGraphPath:@"me/feed"
                                    andParams:params
                                andHttpMethod:@"POST"
                                  andDelegate:self];

しかし、それはまだ「写真」に投稿された画像です。フィードに表示されません...

解決策としてさまざまな方法を検索して使用しましたが、役立つものは見つかりませんでした...

4

2 に答える 2

0

あなたがどのようにparams見えるかわかりませんが、これを試してください..

UIImage *image = ...// some image.

NSData *imageData= UIImagePNGRepresentation(image);

NSMutableDictionary *params = [NSMutableDictionary dictionaryWithObjectsAndKeys:
                           @"some message", @"message", imageData,@"source", nil];

[facebook dialog:@"feed" andParams:params andDelegate:self];
于 2012-05-31T09:29:10.247 に答える
0
UIImage* image=...;
if ([FBSession.activeSession.permissions
         indexOfObject:@"publish_actions"] == NSNotFound) {

        NSArray *permissions =
        [NSArray arrayWithObjects:@"publish_actions",@"publish_stream", nil];
        [[FBSession activeSession] requestNewPublishPermissions:permissions defaultAudience:FBSessionDefaultAudienceFriends
                                              completionHandler:^(FBSession *session, NSError *error) {}];
    }
    else
    {
    NSMutableDictionary* params = [[NSMutableDictionary alloc] init];
    [params setObject:@"Photo post test..." forKey:@"message"];
    [params setObject:UIImagePNGRepresentation(image) forKey:@"picture"];
    //for not allowing multiple hits

        [FBRequestConnection startWithGraphPath:@"me/photos"
                                 parameters:params
                                 HTTPMethod:@"POST"
                          completionHandler:^(FBRequestConnection *connection,
                                              id result,
                                              NSError *error)
     {
         if (error)
         {
             //showing an alert for failure
             UIAlertView *alertView = [[UIAlertView alloc]
                                       initWithTitle:@"Post Failed"
                                       message:error.localizedDescription
                                       delegate:nil
                                       cancelButtonTitle:@"OK"
                                       otherButtonTitles:nil];
             [alertView show];

         }
         else
         {
             //showing an alert for success
             UIAlertView *alertView = [[UIAlertView alloc]
                                       initWithTitle:@"Post success"
                                       message:@"Shared the photo successfully"
                                       delegate:nil
                                       cancelButtonTitle:@"OK"
                                       otherButtonTitles:nil];
             [alertView show];

         }
     }];
    }
于 2013-12-17T11:05:10.680 に答える