4

我正在使用

mAsyncRunner.request("me/friends", new FriendRequestListener());

但我还需要朋友的头像。我可以遍历朋友来获取它们,但这是很多请求。

有什么方法可以在一个请求中获取朋友 ID、姓名和图片?

谢谢

4

2 回答 2

7

不幸的是,不是因为朋友列表是 JSON 编码的答案,并且包括所有图片将是一个巨大的响应。
您必须为每个朋友打电话(如果您想要小型版本,请http://graph.facebook.com/ + userid + /picture?type=large省略)。?type=large

于 2011-03-01T14:07:45.123 回答
1

你写了:

有什么方法可以在一个请求中获取朋友 ID、姓名和图片?

是的,可以使用FQL以及UserFriend FQL 表:

SELECT uid, name, pic, pic_small, pic_big, FROM user WHERE uid IN (SELECT uid2 FROM friend WHERE uid1 = me())

在您的 Android 应用程序中,您可以像这样进行 FQL 查询:

String query = "SELECT uid, name, pic, pic_small, pic_big FROM user WHERE uid IN (SELECT uid2 FROM friend WHERE uid1 = me())";

Bundle params = new Bundle();
params.putString("method", "fql.query");
params.putString("query", query);
mAsyncFacebookRunner.request(null, params, new CustomRequestListener());

在 Facebook Android SDK中CustomRequestListener()扩展。RequestListener

这将返回:

  • ID
  • 用户名
  • URLs for default, small and big profile images

for the current user's friends.

于 2012-11-16T01:35:30.853 回答