2010-12-12 56 views
0

Je rencontre un problème en utilisant Facebook Connect pour télécharger des photos sur Facebook dans mon application iPhone. J'ai essayé l'application de démonstration téléchargée à partir de Facebook SDK. Le code qu'ils utilisent pour télécharger des photos est comme suit:Obtenir une erreur lors de l'utilisation de l'application iPhone pour télécharger des photos sur facebook

- (IBAction)uploadPhoto:(id)sender { 
    NSString *path = @"http://www.facebook.com/images/devsite/iphone_connect_btn.jpg"; 
    NSURL *url = [NSURL URLWithString:path]; 
    NSData *data = [NSData dataWithContentsOfURL:url]; 
    UIImage *img = [[UIImage alloc] initWithData:data]; 

    NSMutableDictionary * params = [NSMutableDictionary dictionaryWithObjectsAndKeys: 
           img, @"picture", 
           nil]; 
    [_facebook requestWithMethodName: @"photos.upload" 
          andParams: params 
         andHttpMethod: @"POST" 
         andDelegate: self]; 
    [img release]; 
} 

Cependant, aucune photo est téléchargé en utilisant cette méthode. J'ai réussi à poster sur le mur d'un utilisateur en utilisant [_facebook dialog:@"stream.publish" andParams:params andDelegate:self] mais je n'ai jamais réussi à poster des photos. Il me donne toujours cette erreur:

"The operation couldn’t be completed. (facebookErrDomain error 101.)" UserInfo=0x4d80be0 {request_args=(
    { 
    key = method; 
    value = "photos.upload"; 
}, 
    { 
    key = sdk; 
    value = ios; 
}, 
    { 
    key = "sdk_version"; 
    value = 2; 
}, 
    { 
    key = format; 
    value = json; 
} 
), error_msg=Invalid API key, error_code=101} 

tonnes Essayé de méthode possible proposées par la recherche google mais pas de chance. Reconnaissant si quelqu'un peut faire la lumière sur cela. Merci d'avance.

Répondre

0

Vous pouvez essayer le code comme ci-dessous:

- (void)uploadPhoto:(id)sender { 
    UIImage *img = [UIImage imageNamed:@"abc.png"]; 

    NSMutableDictionary *params = [NSMutableDictionary dictionaryWithObjectsAndKeys:img, @"picture", nil]; 
    [_facebook requestWithMethodName:@"photos.upload" andParams:params andHttpMethod:@"POST" andDelegate:self]; 
    [img release]; 
} 
0

Est-ce que vous spécifiez @ "publish_stream" dans les permsissions (dans la méthode 'initWithNibname')?