我试图检索所有朋友的列表,但它总是返回零大小的列表...没有例外也没有失败...
我使用以下权限:
Permission[] permissions = new Permission[] {
Permission.BASIC_INFO,
Permission.READ_FRIENDLISTS
};
我正在使用以下代码:
private static OnFriendsListener mOnFriendsListener = new OnFriendsListener()
{
@Override
public void onComplete(List<Profile> friends)
{
L.d(FacebookHelper.class, "OnFriendsListener::onComplete");
BusProvider.getInstance().post(new FacebookEvent(Type.Friends, friends));
}
@Override
public void onException(Throwable throwable)
{
L.d(FacebookHelper.class, "OnFriendsListener::onException");
L.e(FacebookHelper.class, new Exception(throwable));
}
@Override
public void onThinking()
{
}
@Override
public void onFail(String reason)
{
L.d(FacebookHelper.class, "OnFriendsListener::onFail");
}
};
public static void getFriends(SimpleFacebook simpleFacebook)
{
PictureAttributes pictureAttributes = Attributes.createPictureAttributes();
pictureAttributes.setType(PictureType.SMALL);
Properties properties = new Properties.Builder()
.add(Properties.ID)
.add(Properties.FIRST_NAME)
.add(Properties.LAST_NAME)
.add(Properties.PICTURE, pictureAttributes)
.add(Properties.BIRTHDAY).build();
simpleFacebook.getFriends(properties, mOnFriendsListener);
}
有人可以帮我解决这个问题吗?
答案 0 :(得分:2)
您使用的是适用于Android v3.14的Facebook SDK吗?如果是这样,请确保请求“user_friends”权限,该权限允许应用程序读取也通过Facebook登录应用程序的朋友。
注意:v3.14默认使用Graph API 2.0。在该版本的API中,GET / me / friends返回使用Facebook登录应用程序的朋友。
如果您要构建一个功能来标记帖子中的朋友,请查看Taggable Friends API:
https://developers.facebook.com/docs/graph-api/reference/v2.0/user/taggable_friends
有关2.0更改的更多信息,请点击此处:
https://developers.facebook.com/docs/apps/changelog#v2_0_login