2

Facebook SDK は初めてです。前回はfacebook IOS SDK 3.0を使い、グラフAPIで画像を投稿しました。それは働いていますが、今はそうではありません。3.1 にアップグレードしましたが、それでも常に HTTP ERROR 200 が返されます。助けてくれる人はいますか?

これがコードです

- (void) facebookPostPhoto:(UIImage *)photo withMessage:(NSString *)msg withOkAction:(SEL)okAction andNGAction:(SEL)ngAction withTarget:(id)target {
ok = okAction;
ng = ngAction;
curView = target;
NSMutableDictionary *params;
params = [NSMutableDictionary dictionaryWithObjectsAndKeys:
          UIImageJPEGRepresentation(photo, 90), @"source",
          msg, @"message",             
          nil];

if ([FBSession.activeSession.permissions indexOfObject:FacebookPermission_3] == NSNotFound) {
    NSLog(@"permission not found");
    // No permissions found in session, ask for it
    [FBSession.activeSession reauthorizeWithPublishPermissions:[NSArray arrayWithObjects:FacebookPermission_1, FacebookPermission_3, nil] defaultAudience:FBSessionDefaultAudienceFriends completionHandler:^(FBSession *session, NSError *error)
     {
         // If permissions granted, publish the story
         if (!error) [self initPostFacebookWithParams:params];
     }];
} else {
    [self initPostFacebookWithParams:params];
} } 

- (void)initPostFacebookWithParams:(NSMutableDictionary *)params {

[FBRequestConnection startWithGraphPath:@"me/photos" parameters:params HTTPMethod:@"POST" completionHandler:^(FBRequestConnection *connection, id result, NSError *error) {
    NSLog(@"ERROR : %@", error.localizedDescription);
    if (!error) {
        NSLog(@"Facebook Post Success..");
        if (ok && curView) {
            [curView performSelector:ok];
        }


    } else {
        NSLog(@"Facebook Post Failed..");
        if (ng && curView) {
            [curView performSelector:ng withObject:error];
        }

    }

}]; }

私はあなたの迅速な対応と助けに感謝します! ありがとうございました!!

4

1 に答える 1

0

Facebookアップロードのサーバーがダウンしているか、画像サイズに関する新しいポリシーがあるかのどちらかだと思います。画像のサイズを320x320に縮小しても、エラーは返されません。ちなみに、エラーが発生することもあります。

したがって、この質問を目にした人は、画像のサイズを小さくしてみてください。

于 2012-12-27T11:14:43.313 に答える