Facebook iOS SDK: Nie można określić albumu za pomocą FBRequest's requestForUploadPhoto:
Mam lokalne zdjęcie w mojej aplikacji na iPhone'a i chcę przesłać je do określonego albumu na Facebooku poświęconego mojej aplikacji.
Problem: Nazwa mojej aplikacji kończy się słowem „Zdjęcia”, więc domyślnym albumem na Facebooku jestAPP_NAME Photos Photos
- oczywiście problem.
Cel: Chcę utworzyć nowy album, zapisać jego identyfikatorNSUserDefaults
i (po pewnym sprawdzeniu poprawności w czasie wykonywania) używaj go do wszystkich przyszłych zdjęć przesyłanych z aplikacji.
Gdzie jestem: Mogę stworzyć nowy album poprzez Open Graph, używając mojego pożądanego imienia i opisu, i mogę odzyskać jego identyfikator. Mogę też łatwo przesyłać zdjęcia. Jednak NIE MOŻNA dowiedzieć się, jak określić, gdzie kończy się przesłane zdjęcie!
Kod: Oto mój kod do przesyłania zdjęć z niektórymi komentarzami. Zakładam, że właśnie tam jest mój problem, ponieważ tworzenie albumu itp. Działa doskonale.
- (void)postPhotosToFacebook:(NSArray *)photos withAlbumID:(NSString *)albumID {
// Just testing with one image for now; I'll get in to multiple later..
UIImage *image = [photos lastObject];
FBRequest *imageUploadRequest = [FBRequest requestForUploadPhoto:image];
// CALL OUT: I'm guessing my problem is here - but I just don't know!
[[imageUploadRequest parameters] setValue:albumID
forKey:@"album"];
DebugLog(@"imageUploadRequest parameters: %@",[imageUploadRequest parameters]);
// Results of DebugLog:
// imageUploadRequest parameters: {
// album = 10151057144449632;
// picture = "<UIImage: 0xc6b6920>";
// }
// The album data returns correctly using FB's Graph API explorer tool,
// so I know it's a legit album.
// https://developers.facebook.com/tools/explorer
FBRequestConnection *connection = [[FBRequestConnection alloc] init];
[connection addRequest:imageUploadRequest
completionHandler:^(FBRequestConnection *connection, id result, NSError *error) {
if (!error) {
DebugLog(@"Photo uploaded successfuly! %@",result);
// Results of DebugLog:
//
// Photo uploaded successfuly! {
// id = 10151057147399632;
// "post_id" = "511304631_10151057094374632";
// }
// Again, the photo at that ID shows up correctly, etc -
// BUT it's in the wrong album! It shows up in the default app album.
} else {
DebugLog(@"Photo uploaded failed :( %@",error.userInfo);
}
}];
[connection start];
}
Domysły: Zgaduję, że mój problem jest gdzieś, w jaki sposób przypisuję parametr ID albumu do żądania obrazu ... ale nie mam pojęcia.
Możesz zobaczyć naten adres URL że powinno to być możliwe ..