我试图使用Graph API在Facebook页面上发布,我获得了访问令牌,并给予了所有所需的权限,如公共行为和其他,并检索了我的页面ID。我的代码似乎工作得很好,但我的消息不得到张贴在Facebook页面墙。我已经尝试了同样的方法(我/饲料),它张贴在我的墙上。然而,当我用/{Page -id}/feed在我的Facebook页面上发布时,它不起作用。请帮帮我。下面是我的代码:
post_on_page.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
post_on_page.setVisibility(View.VISIBLE);
Bundle params = new Bundle();
params.putString("name", "Test Name");
params.putString("message", "This is a test message");
params.putString("link", "https://www.facebook.com/Integration-test-1768******9580/");
params.putString("display", "page");
new GraphRequest(
AccessToken.getCurrentAccessToken(),
"17680******39580/feed",
params,
HttpMethod.POST,
new GraphRequest.Callback() {
public void onCompleted(GraphResponse response) {
Toast.makeText(getApplicationContext(),"Posted on wall",Toast.LENGTH_SHORT).show();
}
}
).executeAsync();
}
});
我已经尝试了同样的方法(me/feed),它确实在我的墙上发布
这是使用错误的访问令牌的明确指示。您正在使用用户令牌,但是您需要使用具有manage_pages
和publish_pages
权限的页面令牌。
关于令牌和如何生成它们的更多信息:
- https://developers.facebook.com/docs/facebook-login/access-tokens
- http://www.devils-heaven.com/facebook-access-tokens/