2

Facebookプラットフォームで公開されているFacebookアプリケーションがあり、Facebook APIを使用して友達を招待し、招待フォームを作成できましたが、問題は、友達を招待して招待を送信すると、ユーザーとユーザーに招待リクエストが送信されることです。それを受け入れるこの友達は、再び招待できる友達リストに再び表示されます

例えば ​​:

友達リストにXという名前の友達がいます。彼に招待状を送信すると、招待状が送信され、Xが招待状を受け入れます。もう一度招待状を送信しようとすると、友達Xがリストに再び表示され、招待状を送信するために選択できます。つまり、このユーザー(X)に招待状を送信しても、彼はすでにゲームをプレイしているので、この問題を修正する方法を知っておく必要があります。そうすれば、友達は(招待状の)友達リストに表示され、アプリケーションを使用しない友達だけになります。

次のリンクにある 私のアプリケーション私のゲームアプリケーション はそれにアクセスし、友達を招待した直後に問題を確認します。友達が再び表示されるのは、どのゲームアプリケーションでもこれは正常ですか?

返信ありがとうございます

4

1 に答える 1

3

FBMLでは、friend-selectorを使用している場合は、配列exclude_idsを渡すことができます。APIを使用して、すでにアプリを使用しているユーザーの友達を見つける場合は、この方法でそれらを除外できます。

これは、 fb:request-formタグ内にあるmulti-friend-selectorでも機能します。

編集:除外するユーザーの配列は、API呼び出しFriends.getAppUsersを介して取得できます。

次の例では、.NET FacebookDeveloperToolkitを使用しています。(主にそれが私が以前にそれをした方法だからです!)

コードビハインド:

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 に答える