3

Facebook Android SDK を使用して友達リクエストを送信したいです。私は現在、このコードを使用しています(ここから取得しました):

Bundle parameters = new Bundle();
parameters.putString("APP_ID","USERNAME");
facebook.dialog(this, "friends", parameters, this);

ここで、APP_ID はアプリの Facebook ID で、USERNAME は追加したい友達のユーザー名です。これにより、次のエラーが発生します。

API Error Code:100
Invalid parameter
The parameter id is required

id パラメータは APP_ID を意味すると思いました。

http://developers.facebook.com/docs/reference/dialogs/friends/およびhttp://developers.facebook.com/docs/reference/androidsdk/dialog/でダイアログに関する関連ドキュメントを確認しましたが、それでもそれを理解することはできません。

どんな助けでも大歓迎です。

4

2 に答える 2

4

次のようになります。

Bundle parameters = new Bundle();
parameters.putString("id", USER_ID);
facebook.dialog(this, "friends", parameters, this);

thisも実装するアクティビティの場合DialogListener

ドキュメントにあるように:

app_id - アプリケーションの識別子。必須ですが、ほとんどの SDK で自動的に指定されます。
id - 必須。友達として追加するターゲット ユーザーの ID またはユーザー名。

于 2012-06-24T07:16:32.690 に答える
1

次を使用できます。

WebDialog.RequestsDialogBuilder requestBuilder = (new WebDialog.RequestsDialogBuilder(this,
                Session.getActiveSession(), params)).setOnCompleteListener(
                new OnCompleteListener() {

                    @Override
                    public void onComplete(Bundle values,
                            FacebookException error) {
                        if (error != null) {

                        } else {
                            final String requestId = values
                                    .getString("request");
                            if (requestId != null) {
                                //if the user completed the action,
                            } else {

                            }
                        }
                    }

                });
        WebDialog requests = requestBuilder.build();
        requests.show();

事前に選択した友達にリクエストを設定する場合は、requestBuilderに以下を追加するだけです。

requestBuilder.setTo("FRIEND_ID, ANOTHER_FRIEND_ID")、ダイアログを作成する前に。

奇妙なのは、友達のリストを、配列やリストではなく、IDの連結リストとして受け入れることです。ドキュメントには見つかりませんでしたが、機能することがわかりました

于 2013-03-12T11:47:31.240 に答える