2014-05-25 15 views
47

Sto cercando di ottenere tutti gli amici, di un utente che ha registrato nella mia applicazione.Ottenere tutti gli amici utente Uso Facebook Graph API - Android

non posso usare questa API [Amici]:

https://developers.facebook.com/docs/graph-api/reference/v2.0/user/friends

Poiché questa API restituisce solo degli amici che hanno utilizzato l'applicazione che effettua la richiesta.

così ho trovato questa API [FriendList]:

https://developers.facebook.com/docs/graph-api/reference/v2.0/friendlist

Followed this answer, ho avuto la lista friendlist.

Ma sto elenco vuoto quando si cerca di ottenere i membri del friendlist:

new Request(
      session, 
      "/2692926356774/members", 
      null, 
      HttpMethod.GET, 
      new Request.Callback() 
      { 
       public void onCompleted(Response response) 
       { 
        /* handle the result */ 
        Log.e(LOG_TAG,"Members: " + response.toString()); 
       } 
      } 
    ).executeAsync(); 

2692926356774 è la mia Acquaintances list id, ho provato pochi altri id con lo stesso risultato.

+1

Si consiglia di leggere https://developers.facebook.com/docs/graph-api/reference/v2.0/friendlist/members. C'è un grosso avvertimento in alto che dice che non esiste v2.0. Non è possibile ottenere tutti gli amici nella v2.0 – WizKid

+0

L'avviso parla dell'API v1. Ad ogni modo, qual è l'alternativa? – David

+0

Dipende da cosa vuoi fare. Abbiamo aggiunto gli amici taggable_friends, invitable_friends e social context. Quindi, se vuoi fare ciò che rende queste API disponibili, dovresti usarle. Se vuoi fare qualcos'altro che richiede tutti gli amici che non è possibile – WizKid

risposta

80

In v2.0 del Graph API, chiamando /me/friends restituisce gli amici della persona che utilizzano anche l'applicazione.

Inoltre, in v2.0, è necessario richiedere l'autorizzazione user_friends da ogni utente. user_friends non è più incluso per impostazione predefinita in ogni accesso. Ogni utente deve concedere l'autorizzazione user_friends per apparire nella risposta alla /me/friends. Vedere the Facebook upgrade guide per informazioni più dettagliate o rivedere il riepilogo di seguito.

L'autorizzazione /me/friendlists e l'autorizzazione user_friendlists non sono ciò che si sta cercando. Questo endpoint non restituisce gli amici degli utenti: consente di accedere agli elenchi creati da una persona per organizzare i propri amici. Non restituisce gli amici in ciascuna di queste liste. Questa autorizzazione e autorizzazione API è utile per consentire il rendering di un selettore di privacy personalizzato quando si offre alle persone l'opportunità di pubblicare nuovamente su Facebook.

Se si desidera accedere a una lista di amici non-app-uso, ci sono due opzioni:

  1. If you want to let your people tag their friends nelle storie che pubblicano a Facebook utilizzando la vostra applicazione, è possibile utilizzare il /me/taggable_friends API. Use of this endpoint requires review by Facebook e dovrebbe essere utilizzato solo per il caso in cui si sta rendering di una lista di amici, al fine di consentire all'utente di loro tag in un post.

  2. If your App is a Game AND your Game supports Facebook Canvas, è possibile utilizzare il /me/invitable_friends endpoint al fine di rendere a custom invite dialog, poi passano i gettoni restituiti da questa API per the standard Requests Dialog.

In altri casi, le applicazioni non sono più in grado di recuperare la elenco completo degli amici di un utente (solo gli amici che hanno autorizzato in modo specifico la tua app utilizzando l'autorizzazione user_friends).

Per le app che desiderano consentire alle persone di invitare gli amici a utilizzare un'app, è comunque possibile utilizzare lo Send Dialog on Web o il nuovo Message Dialog on iOS e Android.

+0

quindi qualsiasi altra opzione per ottenere l'intero elenco di amici dell'utente .... –

+0

Voglio ottenere tutti i miei video di amici di Facebook utilizzando graph API v2.0? Sono in grado di farlo utilizzando la v1.0 –

+1

Sto utilizzando la finestra di dialogo dei messaggi per gli amici invitati. Ricevo l'ID della transazione in risposta dopo una transazione riuscita, ma messaggio o testo non pubblicato nel profilo o nel muro degli amici! v2.2 Qualsiasi ida? – kb920