2

我正在开发一个需要在用户创建的组中发布的 android 应用程序。

Bundle params = new Bundle();
params.putString("link","www.google.com");
params.putString("message","Group Message");

try {
  String res =    fb.request(GROUP_ID+"/feed",params);

 Log.w("Response",""+res);
} catch (MalformedURLException e) {

 e.printStackTrace();
 } catch (IOException e) {
 e.printStackTrace();
}

 }

我也使用以下权限,

public static final String[] permissions = {"user_photos","friends_groups","read_stream","user_groups","publish_stream"};

但是,当我执行此操作时,不会引发任何异常,并且不会在组的墙上发布帖子。

当我尝试使用创建@Mentions 时,@[user_id:name]我什至没有得到超链接。

谁能帮我解决上述两个问题。

谢谢。

4

2 回答 2

5

默认情况下,该fb.request方法使用 GET 请求。当您打算创建一个新帖子时,您需要使用 POST 方法。这样做很简单——只需将第三个参数 ( httpMethod) 作为“POST”传递。

例如: String res = fb.request(GROUP_ID+"/feed",params,"POST");

欲了解更多信息:https ://developers.facebook.com/docs/reference/androidsdk/ayncrequest/

此外,第一个参数必须是完整的 URL,而不仅仅是 ID -https://graph.facebook.com/GROUP_ID/feed

当然,我是根据您的变量名称做出假设。

于 2012-09-08T22:44:31.690 回答
0
String response = mFacebook.request(GROUP_ID+"/feed",bundle,"POST");

通过使用上述方法,我们可以在群墙发帖。第一个参数 GROUP_ID 应该是一个 15 位数字的字符串。它不应该是一个 url。

第二个参数 bundle 是您要传递的包。

于 2012-11-21T13:07:33.380 回答