使用facebook-android-SDK获取朋友图片

时间:2011-02-28 18:17:48

标签: android facebook facebook-android-sdk

我正在使用

获取朋友ID和名字
mAsyncRunner.request("me/friends", new FriendRequestListener());

但我也需要朋友个人资料图片。 我可以循环好朋友来获取它们,但这是很多请求。

有没有办法在一个请求中获取朋友ID,姓名和图片?

由于

2 个答案:

答案 0 :(得分:7)

不幸的是,不是因为朋友列表是一个JSON编码的答案,包括所有pic都是一个巨大的反应 您必须为每位朋友致电http://graph.facebook.com/ + userid + /picture?type=large(如果您想要小尺寸版本,请省略?type=large

答案 1 :(得分: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());

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

这将返回:

  • ID
  • 用户名
  • 默认,小型和大型个人资料图片的网址

为当前用户的朋友。