从android发布到你的墙不工作?

时间:2011-08-10 17:02:38

标签: android facebook

下面的代码已经完美地工作了好几个月,但在过去的几天里它没有用。有没有其他人有这个问题,或者我做错了什么?

Button fb1 = (Button) dialog.findViewById(R.id.shareFb);
            fb1.setOnClickListener(new OnClickListener() {

                @Override
                public void onClick(View v) {

                    facebook.authorize(DisplaySaved.this,
                            new String[] { "publish_stream" },
                            new DialogListener() {
                                public void onComplete(Bundle values) {
                                    Bundle parameters = new Bundle();
                                    parameters.putString("message", strChangedStory + ".. " +
                                            "www.X-Appz.com/AppLibs/ShowStory.aspx?storyID=" + xRex + " to read the rest of the story!");
                                    facebook.dialog(DisplaySaved.this,
                                            "stream.publish", parameters,
                                            this);
                                }

                                @Override
                                public void onFacebookError(
                                        FacebookError error) {
                                }

                                @Override
                                public void onError(DialogError e) {
                                }

                                @Override
                                public void onCancel() {
                                }

                            });
                }

            });
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);

    facebook.authorizeCallback(requestCode, resultCode, data);
}

也可以有人告诉我,一旦按下“分享”按钮,我怎么能删除Facebook对话框屏幕并返回上一个?

1 个答案:

答案 0 :(得分:1)

1)您的FB发布可能已被破坏,因为FB可能已禁用您的应用 - 他们的政策说“消息”不应包含任何编程提要,它应该只包含用户输入的状态。所有自动数据都应通过“附件”进行。尝试去FB,看看你的应用程序是否仍然存在。

2)要在用户按下共享或取消后退出FB对话框屏幕,只需将以下代码添加到onComplete -

if (values.isEmpty() || values.containsKey("post_id")) {
            if(values.containsKey("post_id")){
                Toast.makeText(this, "Your content has been Published",
                        Toast.LENGTH_SHORT).show();
            }
            System.out.println("******QFP - going out********");
            finish();
            return;
        }