51

アプリケーションにログインしたユーザーのすべての友達を取得しようとしています。

この API を使用できません [友人]:

https://developers.facebook.com/docs/graph-api/reference/v2.0/user/friends

この API は、リクエストを行ったアプリを使用した友人のみを返すためです。

だから私はこのAPI [フレンドリスト]を見つけました:

https://developers.facebook.com/docs/graph-api/reference/v2.0/friendlist

この回答に従って、フレンドリストのリストを取得しました。

しかし、フレンドリストのメンバーを取得しようとすると、空のリストが表示されます:

new Request(
            session,
            "/2692926356774/members",
            null,
            HttpMethod.GET,
            new Request.Callback()
            {
                public void onCompleted(Response response)
                {
                    /* handle the result */
                    Log.e(LOG_TAG,"Members: " + response.toString());
                }
            }
    ).executeAsync();

2692926356774は私Acquaintances list idのものです。他のいくつかの ID を試してみましたが、同じ結果が得られました。

4

1 に答える 1

85

Graph API の v2.0 では、呼び出すと/me/friends、アプリも使用しているその人の友達が返されます。

さらに、v2.0 では、user_friends各ユーザーに許可を要求する必要があります。user_friendsすべてのログインにデフォルトで含まれなくなりました。への応答に表示されるようにするには、各ユーザーがuser_friends権限を付与する必要があり/me/friendsます。詳細については、Facebook アップグレード ガイドを参照するか、以下の概要を確認してください。

/me/friendlistsエンドポイントと許可は、user_friendlistsあなたが求めているものではありません。このエンドポイントは、ユーザーの友達を返しません。ユーザーが友達を整理するために作成したリストにアクセスできます。これらの各リストの友達は返されません。この API とアクセス許可は、人々に Facebook に公開する機会を与えるときに、カスタム プライバシー セレクターをレンダリングできるようにするのに役立ちます。

アプリを使用していない友達のリストにアクセスする場合は、次の 2 つのオプションがあります。

  1. アプリを使用して Facebook に公開するストーリーで友達にタグを付けたい場合/me/taggable_friendsは、 API を使用できます。このエンドポイントを使用するには、Facebook によるレビューが必要であり、ユーザーが投稿でタグ付けできるようにするために、友達のリストをレンダリングする場合にのみ使用する必要があります。

  2. アプリがゲームであり、ゲームが Facebook Canvasをサポートしている場合、エンドポイントを使用してカスタムの招待ダイアログ/me/invitable_friendsをレンダリング、この API によって返されたトークンを標準のリクエスト ダイアログに渡すことができます。

それ以外の場合、アプリはユーザーの友達の完全なリストを取得できなくなります (user_friendsパーミッションを使用してアプリを明確に承認した友達のみ)。

アプリを使用するために友人を招待できるようにするアプリの場合、Web の [送信] ダイアログまたはiOSAndroidの新しい [メッセージ] ダイアログを引き続き使用できます。

于 2014-05-29T05:43:54.720 に答える