我想TOT发送使用Facebook Android SDK中好友请求。 我目前使用此代码(这是我从拿到这里 ):
Bundle parameters = new Bundle();
parameters.putString("APP_ID","USERNAME");
facebook.dialog(this, "friends", parameters, this);
其中APP_ID是我的应用程序的Facebook的ID和用户名是我想添加好友的用户名。 这导致了以下错误:
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/ ,但仍不能看着办吧。
任何帮助表示赞赏。
应该是这样的:
Bundle parameters = new Bundle();
parameters.putString("id", USER_ID);
facebook.dialog(this, "friends", parameters, this);
在这情况下, this
是一个还实现了一个活动DialogListener
。
因为它说,在文档中:
APP_ID -您的应用程序的标识。 必需的,但大多数的SDK自动指定。
编号 -必要。 目标用户的ID或用户名添加为朋友。
您可以使用:
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的连续清单,而不是一个数组,也不名单。 我没有找到在文档,但只是发现它的工作原理