Ich arbeite an einer kleinen Android-Anwendung und versuche, Facebook-Unterstützung hinzuzufügen.Facebook API für Android: Wie bekomme ich erweiterte Informationen über die Freunde des Benutzers?
Hauptproblem: Ich kann nur grundlegende Informationen über die Freunde des Benutzers (ID, Name) erhalten. Liste der App-Berechtigungen (offline_access ist hier nur zum Test, wird in Kürze entfernt werden):
String[] sPermissions = { "friends_about_me"
, "friends_birthday"
, "friends_location"
, "friends_website"
, "offline_access" };
mLoginButton.init(this, mFacebook, sPermissions);
Nach Anfrage funktioniert gut - gibt eine Liste von ID: Name Paare,
mAsyncRunner.request("me/friends", new SampleRequestListener());
aber wenn ich ändern sie es, um mehr Informationen zu erhalten
mAsyncRunner.request("me/friends?fields=id,name,birthday,hometown", new SampleRequestListener());
Server gibt Fehler „Eine aktive Zugriffstoken verwendet werden, müssen Informationen über den aktuellen Benutzer abzufragen.“ Ich habe diese Graph-API-Anfragen mit dem Browser getestet - beide funktionieren wie erwartet.
Kleine Bemerkung: I`m Standard-Debug-cetificate mit apllication zu unterzeichnen und es Hash als Facebook-Anwendung Hash nach Facebook Anweisung hinzufügen:
Ihre Anwendung Android-Hash registrieren. Dies wird von Facebook verwendet, um sicherzustellen, dass eine andere App Ihre App nicht darstellen kann, wenn Sie mit der Facebook Android App sprechen.
Generieren Sie den Schlüssel hash:
keytool -exportcert -alias [alias] -keystore [Schlüsselspeicher] | openssl sha1 -binär | openssl base64 Gehen Sie in den Facebook-Entwicklereinstellungen zur Registerkarte Mobile und Geräte.
Geben Sie im Android-Bereich den Schlüssel Hash in das Feld Key Hash ein.
Vielleicht gibt es einen anderen Weg, um Benutzer-Informationen zu erhalten (bday, Standort, Geschlecht und so weiter)?
Sie haben meinen Tag :), es funktioniert. Vielen Dank! –