2015-09-17 36 views
3

我想用我的應用程序來獲取好友列表,我從Facebook SDK寫了下面的代碼:的Facebook SDK圖形響應爲空

FacebookSdk.sdkInitialize(getApplicationContext()); 
     new GraphRequest(
    AccessToken.getCurrentAccessToken(), 
    "me/friends?fields=name,email", 
    null, 
    HttpMethod.GET, 
    new GraphRequest.Callback() { 
     public void onCompleted(GraphResponse response) { 
      /* handle the result */ 
      Log.d("[email protected]", "graph response " + response.getJSONObject()); 
     } 
    } 
).executeAsync(); 

這裏是我的logcat:

09-17 16:55:29.226: D/com.facebook.GraphRequestAsyncTask(8087): execute async task: {RequestAsyncTask: connection: null, requests: [{Request: accessToken: {AccessToken token:ACCESS_TOKEN_REMOVED permissions:[contact_email, email, public_profile]}, graphPath: me/friends?fields=name,email, graphObject: null, httpMethod: GET, parameters: Bundle[{}]}]} 
09-17 16:55:29.226: W/FacebookSDK.Request(8087): starting with Graph API v2.4, GET requests for /me/friends?fields=name,email should contain an explicit "fields" parameter. 
09-17 16:55:29.226: W/System.err(8087): java.lang.Exception 
09-17 16:55:29.236: W/System.err(8087):  at com.facebook.internal.Logger.log(Logger.java:92) 
09-17 16:55:29.236: W/System.err(8087):  at com.facebook.internal.Logger.log(Logger.java:77) 
09-17 16:55:29.236: W/System.err(8087):  at com.facebook.GraphRequest.validateFieldsParamForGetRequests(GraphRequest.java:1648) 
09-17 16:55:29.236: W/System.err(8087):  at com.facebook.GraphRequest.toHttpConnection(GraphRequest.java:1039) 
09-17 16:55:29.236: W/System.err(8087):  at com.facebook.GraphRequest.executeBatchAndWait(GraphRequest.java:1147) 
09-17 16:55:29.236: W/System.err(8087):  at com.facebook.GraphRequestBatch.executeAndWaitImpl(GraphRequestBatch.java:252) 
09-17 16:55:29.236: W/System.err(8087):  at com.facebook.GraphRequestBatch.executeAndWait(GraphRequestBatch.java:201) 
09-17 16:55:29.236: W/System.err(8087):  at com.facebook.GraphRequestAsyncTask.doInBackground(GraphRequestAsyncTask.java:169) 
09-17 16:55:29.236: W/System.err(8087):  at com.facebook.GraphRequestAsyncTask.doInBackground(GraphRequestAsyncTask.java:1) 
09-17 16:55:29.236: W/System.err(8087):  at android.os.AsyncTask$2.call(AsyncTask.java:288) 
09-17 16:55:29.236: W/System.err(8087):  at java.util.concurrent.FutureTask.run(FutureTask.java:237) 
09-17 16:55:29.236: W/System.err(8087):  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112) 
09-17 16:55:29.236: W/System.err(8087):  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587) 
09-17 16:55:29.236: W/System.err(8087):  at java.lang.Thread.run(Thread.java:841) 
09-17 16:55:29.396: D/[email protected](8087): graph response null 

圖響應爲空,請幫忙嗎?

+0

的可能重複[如何獲得GraphRequest.newMeRequest用戶電子郵件(http://stackoverflow.com /問題/ 32223403 /如何對獲得用戶的電子郵件,上graphrequest-newmerequest) – Tobi

回答

0

我解決了這傢伙,但問題是在登錄時我沒有權限「user_friends」。