Android的Facebook的SDK - action.setPlace错误定制故事中的An

2019-11-03 11:34发布

我试图使用后的Open Graph(分享对话框法)在Android上FB自定义的故事。 该代码是工作得很好,并成功发布,直到我加入action.setPlace()。 现在分享对话框正确显示。 但是,当我点击“发布”按钮,一个奇怪的错误信息出现如下

“我们很抱歉,此信息不再可用。它可能已被删除”

而在onActivityResult(),我得到以下异常“com.facebook.FacebookException:错误发布消息”

这里是我的代码

OpenGraphObject place = OpenGraphObject.Factory
            .createForPost("shellstationstunisia:shell_gas_station");
    place.setProperty("title", "Shell Stations Tunisia");
    place.setProperty(
            "image",
            "http://img1.wikia.nocookie.net/__cb20070306105202/uncyclopedia/images/4/4e/Shell_Logo.png");
    place.setProperty(
            "url",
            "http://www.shell.com/global/aboutshell/contact-us/contact/contact-tunisia.html");
    place.setProperty("description", "Best Gas Station in Tunisia");

    OpenGraphAction action = GraphObject.Factory
            .create(OpenGraphAction.class);
    action.setProperty("shell_gas_station", place);

    //Set a Place - THIS CAUSED THE PROBLEM - Place ID is correct
    GraphPlace my_current_location = GraphObject.Factory
            .create(GraphPlace.class);
    my_current_location.setId("432170683497784");
    action.setPlace(my_current_location);


    @SuppressWarnings("deprecation")
    FacebookDialog shareDialog = new FacebookDialog.OpenGraphActionDialogBuilder(
            this, action, "shellstationstunisia:travel",
            "shell_gas_station").build();

    uiHelper.trackPendingDialogCall(shareDialog.present());

Answer 1:

我自己解决了这个问题。 这是一个身份验证问题。 我不得不启用从FB开发小组“地方” Capabilites。 只要按照下面给出的步骤,

  1. 在developers.facebook.com,打开你的应用程序仪表板。
  2. 在左窗格中,打开“开放图谱。
  3. 选择“动作类型”选项卡
  4. 选择其中你获得上述错误的操作类型。
  5. 向下滚动到款,你会发现“能力”节
  6. 开启“地方”或者你想使用的任何其他能力
  7. 单击保存更改。

现在,您的应用程序将工作得很好:)



Answer 2:

我解决了这样这个问题:

  1. 打开“设置” - “显示名称”
  2. 更改“显示名称”到你的应用程序名称(必须相同)

希望这可以帮到你!



文章来源: Android Facebook SDK - action.setPlace Error in Custom Stories in Andorid(Feed Dialog Method)