Android - 使用 facebook sdk 在 facebook 墙上发帖的问题

Posted

技术标签:

【中文标题】Android - 使用 facebook sdk 在 facebook 墙上发帖的问题【英文标题】:Android - Issue in posting on facebook wall using facebook sdk 【发布时间】:2015-01-30 13:11:26 【问题描述】:

我使用 facebook sdk 在 facebook 墙上发帖。我在开发者 facebook 中创建了应用程序 ID,并使用以下代码在 facebook 墙上发布。

private Facebook facebook = new Facebook(APP_ID);  
private static final String[] PERMISSIONS = new String[]  "publish_actions" ;
Bundle parameters = new Bundle();
parameters.putString("message", message);
parameters.putString("description", "topic share");

try 
    facebook.request("me");
    String response = facebook.request("me/feed", parameters, "POST");
    Log.d(TAG, "got response: " + response);       
 catch (Exception e)        

以上代码仅适用于 appid 包含的一个 facebook 帐户。如果您尝试通过其他一些 Facebook 帐户登录。它显示以下错误。

"error":"message":"(#200) 用户未授权应用程序执行此操作","type":"OAuthException","code" :200

谁能帮我解决这个问题?

提前致谢。

卡马尔

【问题讨论】:

如果您的应用处于调试模式,您只能使用自己的帐户或创建测试开发者帐户。转到 Facebook 上的应用信息,打开左侧菜单中的角色选项卡,然后选择“测试用户”选项卡。在那里你可以添加用户。 【参考方案1】:

在您可以为每个用户使用publish_actions 之前,需要完成两件事:

在您的应用设置的“设置和查看”标签中将您的应用设为公开 通过publish_actions 完成审核流程

审核流程在文档中有说明:https://developers.facebook.com/docs/apps/review/login

未经审核,publish_actions 仅适用于在您的应用中具有角色的用户。

另外,请确保在使用 publish_actions 之前了解 platform policy > 消息必须 100% 由用户生成。

【讨论】:

你添加了什么平台吗? 好吧,你必须添加一个平台......在你的情况下,android 根据您的评论,我已在开发人员 Facebook 中提交审核,但他们告诉您您的应用无法使用任何内容自动填充消息字段。查看评论 - 人们必须在用户消息字段中输入所有内容。即使您允许用户在共享前编辑内容,您的应用也无法使用任何内容(包括链接和主题标签)自动填充消息字段。请在重新提交审核之前从您的共享内容中删除所有预先填写的文本。 是的,没错。你不能使用任何消息,它必须是用户生成的。

以上是关于Android - 使用 facebook sdk 在 facebook 墙上发帖的问题的主要内容,如果未能解决你的问题,请参考以下文章

使用 Facebook SDK Login (iOs/Android) 登录 Facebook @ Web?

在 Facebook SDK Android 上找不到文件“com.facebook.android.facebook”

Facebook 用户通过 Facebook SDK - Android 登录后保持登录状态

facebook android sdk中使用的facebook api版本

通过 Xamarin.Facebook.Android sdk 登录 Facebook

Android Facebook SDK 4.0 登录:用户登录 Facebook 应用程序时出错