Ich habe über die developers.facebook Website nach einer Möglichkeit gesucht, das neue SDK zu verwenden und FQL-Abfragen zu senden, aber es scheint alles hat sich geändert und die Dokumentation spricht über alle Arten von anderen Möglichkeiten zur Anfrage me
oder friends
aber keine spezifischen Informationen wie sind diese Freunde mit meiner App oder nicht?So senden Sie eine FQL-Abfrage mit dem neuen Android SDK
so schrieb ich eine nette FQL Abfrage
untenselect uid, name, pic_square, is_app_user from user where uid in (select uid2 from friend where uid1 = me())
und jetzt, alles, was ich tun muß, ist es laufen.
Da die einzigen Anforderungen, die für die Rückgabe einer Liste von Freunden gut scheinen, sind Request.executeMyFriendsRequestAsync
und Request.newMyFriendsRequest
Ich nahm they'ed meine Freunde sein, aber beide nicht die Feinabstimmung eines FQL Abfrage ermöglichen.
Wie kann ich eine Anfrage senden und eine Liste von Freunden oder mindestens JSONArray
zurückbekommen?
Das Hackbook - FQL Query Tutorial verwendet die alte Version des SDK und ich weiß nicht, was zu tun ist.
UPDATE:
ich diese Zeilen Code hinzugefügt dachte, es mir diese Abfrage erstellen lassen: diese
public void onCreate(Bundle savedInstanceState) {
// SOME CODE
this.openSession();
}
protected void onSessionStateChange(SessionState state, Exception exception) {
if (state.isOpened()) {
Session activeSession = getSession().getActiveSession();
facebook.setAccessToken(activeSession.getAccessToken());
facebook.setAccessExpires(activeSession.getExpirationDate().getTime());
Request req = Request.newMyFriendsRequest(activeSession, new GraphUserListCallback() {
@Override
public void onCompleted(List<GraphUser> users, Response response) {
System.out.println(response.toString());
}
});
Bundle params = new Bundle();
params.putString("method", "fql.query");
params.putString("query", "select uid, name, pic_square, is_app_user " + "from user where uid in "
+ "(select uid2 from friend where uid1 = me())");
req.setParameters(params);
Request.executeBatchAsync(req);
}
}
ich es tat, dachte er die Anfrage die Informationen bearbeiten wird, und fügen Sie Ich möchte, aber ich habe diesen Fehler:
10-31 09:36:31.647: E/AndroidRuntime(15986): java.lang.NullPointerException
10-31 09:36:31.647: E/AndroidRuntime(15986): at com.sample.facebook.to.db.MainActivity$1.onCompleted(MainActivity.java:62)
10-31 09:36:31.647: E/AndroidRuntime(15986): at com.facebook.Request$2.onCompleted(Request.java:269)
10-31 09:36:31.647: E/AndroidRuntime(15986): at com.facebook.Request$4.run(Request.java:1197)
10-31 09:36:31.647: E/AndroidRuntime(15986): at android.os.Handler.handleCallback(Handler.java:587)
10-31 09:36:31.647: E/AndroidRuntime(15986): at android.os.Handler.dispatchMessage(Handler.java:92)
10-31 09:36:31.647: E/AndroidRuntime(15986): at android.os.Looper.loop(Looper.java:130)
10-31 09:36:31.647: E/AndroidRuntime(15986): at android.app.ActivityThread.main(ActivityThread.java:3691)
10-31 09:36:31.647: E/AndroidRuntime(15986): at java.lang.reflect.Method.invokeNative(Native Method)
10-31 09:36:31.647: E/AndroidRuntime(15986): at java.lang.reflect.Method.invoke(Method.java:507)
10-31 09:36:31.647: E/AndroidRuntime(15986): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:907)
10-31 09:36:31.647: E/AndroidRuntime(15986): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:665)
10-31 09:36:31.647: E/AndroidRuntime(15986): at dalvik.system.NativeStart.main(Native Method)
danke ein Haufen! Ich bekam gerade nicht, wie man das neue Format von 'Graph-API' mit diesem SDK benutzt ... – thepoosh
arbeitete wie Magie! Vielen Dank! – TharakaNirmana
Es funktioniert wirklich, aber ich habe eine Frage, warum es nicht alle meine Freunde zurückgibt? nur ein paar. – JayR