我想使用Facebook Android SDK发送好友请求。我目前正在使用此代码(我从here获得):
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/对话框的相关文档,但仍无法弄明白。
感谢任何帮助。
答案 0 :(得分:4)
应该是这样的:
Bundle parameters = new Bundle();
parameters.putString("id", USER_ID);
facebook.dialog(this, "friends", parameters, this);
如果this
是同时实施DialogListener
的活动。
正如文档中所述:
app_id - 您的应用程序的标识符。必需,但自动 由大多数SDK指定 id - 必填。的ID或用户名 目标用户添加为朋友。
答案 1 :(得分: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的连接列表,而不是数组或列表。我没有在文档中找到,但发现它有效