无法向Facebook帖子对话框提供参数

时间:2012-02-27 18:55:56

标签: android facebook

我正在使用以下代码预先填充帖子对话框。但是我得到了一个空的对话框:

        Bundle parameters = new Bundle();
        parameters.putString("app_id", appID);
        parameters.putString("name", "Facebook Dialog");
        parameters.putString("caption", "Reference Documentation");

        parameters.putString("message", "Facebook Dialogs are easy!");

        facebook.dialog(score.this, "feed", parameters, new DialogListener() {

            @Override
            public void onComplete(Bundle values) {
            }

            @Override
            public void onFacebookError(FacebookError error) {
            }

            @Override
            public void onError(DialogError e) {
            }

            @Override
            public void onCancel() {
            }
        });

但是,如果有可能,我根本不想进行任何对话,直接发布到用户墙。

1 个答案:

答案 0 :(得分:5)

我不是为Android开发的,但我知道Facebook在处理Feed对话框中可能导致您的问题的message参数时做了一些更改。

预先填充message参数始终违反政策。它必须是用户生成的。在过去几个月的某个时候,Facebook甚至停止接受它在Feed对话框中使用,这可能会导致您的问题。现在,您可以将其作为参数传递的唯一方法是通过图表API发布到Feed。当然,您仍然需要确保在您的应用程序设计中遵守策略并让用户填充消息 - 它不能是应用程序生成的字符串。

所以,既然你甚至不想要对话框,你应该真正考虑通过图形API发布。您需要获取publish_stream扩展权限,然后对用户的源执行POST。见https://developers.facebook.com/docs/reference/api/post/