Facebook WebDialog.FeedDialogBu​​ilder Ok按钮响应

时间:2014-10-14 08:58:15

标签: android android-facebook

在我的Facebook应用程序中,我正在使用FeedDialogBu​​ilder分享我的帖子。 我有条件,如果我从Facebook帐户中删除应用程序ID并尝试共享,则会显示以下图像。当我点击“确定”按钮一次,然后网络对话没有消失。当我双击同一个按钮时,对话框就被解除了。

 public void publishFeedDialog(final Context context,
        FacebookApiModel shareMessageContant) {
    Bundle params = new Bundle();
    params.putString("name", shareMessageContant.getShareMessageName());
    params.putString("caption", shareMessageContant.getShareMessageTitle());
    params.putString("description",
            shareMessageContant.getShareMessageDescription());
    params.putString("link", shareMessageContant.getShareMessageLink());
    WebDialog feedDialog = (new WebDialog.FeedDialogBuilder(
            (Activity) context, Session.getActiveSession(), params))
            .setOnCompleteListener(new OnCompleteListener() {

                @Override
                public void onComplete(Bundle values,
                        FacebookException error) {
                    onCompleteErrorChecker(values, error, context);

                }
            }).build();
    feedDialog.show();
}
public void onCompleteErrorChecker(Bundle values, FacebookException error,
        Context context) {
    if (error == null) {
        final String postId = values.getString("post_id");
        if (postId != null) {
            Toast.makeText(context.getApplicationContext(),
                    "Posted story, id: " + postId, Toast.LENGTH_SHORT)
                    .show();
        } else {
            Toast.makeText(
                    context.getApplicationContext().getApplicationContext(),
                    "Publish cancelled", Toast.LENGTH_SHORT).show();
        }
    } else if (error instanceof FacebookOperationCanceledException) {
        Toast.makeText(
                context.getApplicationContext().getApplicationContext(),
                "Publish cancelled", Toast.LENGTH_SHORT).show();
    }else {
        Toast.makeText(
                context.getApplicationContext().getApplicationContext(),
                "Error posting story", Toast.LENGTH_SHORT).show();
    }
}

如何通过单击“确定”按钮来解除网络对话,还是有其他方法可以解决此问题? 提前致谢enter image description here

1 个答案:

答案 0 :(得分:0)

您应该检查Stream post URL安全性。有时它可能会在打开Fcebook WebDialog时生成此问题。

  1. 请转到Facebook Developer Console。
  2. 选择您的应用。
  3. 设置>迁移标签>设置“Stream post URL security”切换为Off。
  4. 立即检查。

    它可以解决您的问题。