2

我有一个在 facebook 平台上发布的 facebook 应用程序,我使用 facebook API 来邀请朋友,我已经成功创建了邀请表单,但问题是当你邀请朋友并发送邀请并将邀请请求发送给用户和用户时接受这个朋友再次出现在可以再次邀请的朋友列表中

例如 :

我的朋友列表中有一个名为 X 的朋友,当我向他发送邀请时,会发送邀请并且 X 接受邀请,当我再次尝试发送邀请时,朋友 X 再次出现在列表中,我可以从中选择发送邀请这意味着我可以向该用户 (X) 发送邀请,并且他已经在玩游戏,我需要知道如何解决此问题,以便朋友出现在朋友列表中(用于邀请),只有不使用该应用程序的朋友。

我的应用程序在以下链接 我的游戏应用程序 访问它并在邀请朋友后看到问题 他们会再次出现在任何游戏应用程序中都是正常的吗?

提前感谢您的回复

4

1 回答 1

3

在 FBML 中,如果您使用朋友选择器,您可以将数组exclude_ids传递给它。如果您使用 api 查找已经在使用您的应用的用户的朋友,您可以通过这种方式排除他们。

这也适用于位于fb:request-form标签内的多朋友选择器。

编辑:要排除的用户数组可以通过 API 调用Friends.getAppUsers获得。

以下示例使用 .NET Facebook Developer Toolkit。(主要是因为我以前就是这样做的!)

代码背后:

public string CURRENT_USER_FRIENDS = "";

//Call this function on pageload or where you like
private void PopulateFriendsData()
{
//exclude friends who already have the app from the inviter
string UsersToExclude = string.Empty;
IList<long> AppUserFriends = this.Master.API.friends.getAppUsers();
foreach (long L in AppUserFriends)
{
    UsersToExclude += L.ToString() + ",";
}
CURRENT_USER_FRIENDS = UsersToExclude.TrimEnd(',');
}

页:

<fb:multi-friend-selector 
actiontext="Select the friends you want to invite" 
rows="3" 
exclude_ids="<%=CURRENT_USER_FRIENDS%>"/>
于 2009-06-16T14:39:55.327 回答