2011-12-20 33 views
8

No estoy seguro si esto es posible -Facebook Graph API: ¿Conseguir un N amigos al azar?

Estoy desarrollando un juego para Android, y quiero que incluya imágenes de 15 amigos al azar.

Sin embargo, parece que mi única opción es llamar a la API gráfica "/ me/amigos" (varias veces, con paginación) para obtener todo de un grupo de amigos de los usuarios, almacenar la lista, a continuación, seleccionar al azar un subconjunto de amigos y recuperar sus fotos de perfil.

Me preguntaba si hay una sola llamada a Graph API para ordenar aleatoriamente, o de alguna manera reducir la huella de este trabajo, para poder usar su lado del servidor ?limit=15 para reducir las solicitudes que mi aplicación tiene que hacer.

Gracias!

+0

Estaría interesado en saber la respuesta a esta pregunta, mi pregunta es la misma, ¡simplemente no a través de Android! – dougajmcdonald

Respuesta

21

Esto es posible a través de la consulta FQL que puede ejecutar con Graph API

SELECT uid, name FROM user WHERE uid IN (
    SELECT uid2 FROM friend WHERE uid1 = me() 
) ORDER BY rand() limit 15 

conseguirlo a través de API de gráficos sólo tiene que emitir GET solicitud a:

GET http://graph.facebook.com/fql?q={QUERY_HERE} 
0

Si no rand (), también se puede utilizar desplazamiento y límite

seleccione uid2 de un amigo donde me uid1 (=) límite 15 desplazamiento 15

Esto hará que el amigo sea elegido la vez anterior, no aparecerá de nuevo en el nuevo grupo de 15 amigos elegido la próxima vez. Estoy de acuerdo en que no es realmente aleatorio, porque cuando dicen al azar, hay posibilidades de que los amigos anteriores vuelvan a aparecer.

Cuestiones relacionadas