Ich versuche, ein Foto auf meiner apps Facebook-Fanpage und an die Benutzerwand auch zu posten. Es ist mir gelungen, das Foto an der Benutzerwand zu posten, aber es konnte nicht in der Wand der Fanseiten gepostet werden. (Der Benutzer ist nicht unbedingt ein Administrator oder Seiteninhaber, nur die normalen Benutzer. Da die Fanseite die Option hat, dass jeder auf sie posten kann, ist es nicht zwingend erforderlich, dass der Benutzer die Seite zuerst mag. Richtig?)Foto auf Facebook Fan-Seite über iOS-App von normalen Nicht-Admin-Benutzer veröffentlichen
Nach dem googlen eine Weile, fand ich this answer. Demnach benötige ich ein access_token der Fanseite und eine album_id dafür. Aber ich kann keine Ahnung finden, wie man sie bekommt. Bisher habe ich diesen Code ausprobiert:
if ([appDelegate.facebook isSessionValid])
{
NSMutableDictionary *params = [NSMutableDictionary dictionaryWithObjectsAndKeys:
resultImage, @"picture",
nil];
[appDelegate.facebook requestWithGraphPath:@"me/photos"
andParams:params
andHttpMethod:@"POST"
andDelegate:self]; // to post on users wall, works fine
NSString *path = [NSString stringWithFormat:@"my/accounts /fan_page_id?fields=access_toke/photos"];
[appDelegate.facebook setAccessToken: FACEBOOK_ACCESS_TOKEN];
[appDelegate.facebook requestWithGraphPath:path andParams:params andHttpMethod:@"POST" andDelegate:self]; // to post on fan page wall, this doesn't work
}
Kann mir jemand dabei helfen? Was fehlt mir hier? Danke im Voraus.
UPDATE
Nach this answer, ein normaler Benutzer kann kein Foto auf die Fanpages Wand von einem iOS-App veröffentlicht, kann aber auf das Foto teilen. Nun, meine Frage ist, wie kann ich das Foto auf der Nutzerwand veröffentlichen und es gleichzeitig auf der Fanseitenwand teilen? Ist es möglich? Wie gebe ich das Foto auf der Fanseitenwand frei?
UPDATE 2
This answer and the question sagt, dass die regelmäßigen Nutzer auf eine Fanseite Wand über Neuigkeiten veröffentlichen können, so dass ich geändert mein Code wie folgt aus:
if ([appDelegate.facebook isSessionValid]) {
NSMutableDictionary *page_params = [NSMutableDictionary dictionaryWithObjectsAndKeys:
@"fan_page_id", @"to",
@"Test", @"name",
@"Test", @"caption",
resultImage, @"picture",
nil];
[appDelegate.facebook dialog:@"feed"
andParams:page_params
andDelegate:self];
}
Aber ich erhalte immer diese lächerliche Fehlermeldung und die App stürzt ab:
-[UIImage length]: unrecognized selector sent to instance 0x24d110
2012-06-06 19:59:03.114 app_name[2739:707] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[UIImage length]: unrecognized selector sent to instance 0x24d110'
Was soll ich jetzt tun?
An diesem Punkt nach dem Warten so lange, die Frage kommt in meinen Sinn ist, ist das überhaupt möglich? Wenn ja, wie beende ich diese Aufgabe? Und wenn nicht, was sind die Alternativen? Bitte helfen Sie.
aktualisieren 3
fand nur, dass es ein known bug sowohl iOS sdk ist und die JavaScript-sdk für Dialoge in Fanpage Verläufen. Gilt das auch für das Hochladen von Bildern? Wenn jemand eine Lösung hat, um diesen Fehler zu vermeiden, bitte helfen Sie.
Vielen Dank für Ihre Antwort. Wie ich bereits sagte, wird das Bild von der Telefonkamera des Benutzers genommen und dann teilt der Benutzer es an seiner/ihrer Wand und gleichzeitig an der Wand der Fanseite. Können Sie mir in diesem Fall einen besseren Weg geben? Vielleicht ein Beispiel/Tutorial, falls Sie diese Art von Optimierung vorgenommen haben? – Shabib
Sie können von der App auf ihre eigene Wand posten und gleichzeitig das Foto auf Ihren eigenen Server hochladen, dann Ihren Server verwenden das Seitenzugriffstoken, um es auf die Seite – Igy