如何在 Facebook 弃用后添加标题和内容?

How to add title and content after Facebook deprecation?

下面是点击按钮后成功分享 link 到 Facebook 的一些代码:

public void onClick(View view) {
            if (ShareDialog.canShow(ShareLinkContent.class)) {
                ShareLinkContent linkContent = new ShareLinkContent.Builder()
                        .setContentTitle("A title")
                        .setContentDescription("Some description.")
                        .setContentUrl(Uri.parse("www.website.com"))
                        .build();
                shareDialog.show(linkContent);
            }
        }

使用 Android Studio,“.setContentTitle”和“.setContentDescription”已被弃用,其中有一条线穿过它们。当我 post link 时,它被分享时没有标题和描述。我认为这是因为它们已被弃用。

如何添加标题和描述?被弃用的术语被什么取代了?这不是 pre-filling a post,Facebook 完全摆脱这些功能是没有意义的。我尝试了几种不同的 link,因为 URL、none 对这个问题产生了影响。

非常感谢。

编辑:请注意元标记不是一个选项,因为如果我要 link 到 Google Play 商店中的应用程序,我无法控制该页面的标签拥有。我希望从应用程序中提供一个 title/description,就像以前使用提到的已弃用功能一样。

我找到了解决此问题的合适方法,但不是专门替换标题和描述的方法。在没有 pre-filling 用户文本框的情况下自动将文本添加到 post 的另一种方法是使用 .setQuote().

例如我上面提供的代码:

public void onClick(View view) {
        if (ShareDialog.canShow(ShareLinkContent.class)) {
            ShareLinkContent linkContent = new ShareLinkContent.Builder()
                    .setQuote("This may be used to replace setTitle and setDescription.")
                    .setContentUrl(Uri.parse("www.website.com"))
                    .build();
            shareDialog.show(linkContent);
        }
    }

如果有人知道正确替换已弃用函数的方法,而不需要像我刚刚提供的那样不同的替代方法,请post它,我会将其标记为已解决。

非常感谢。

您可以使用使用 ShareOpenGraphAction 和 ShareOpenGraphObject 的 ShareOpenGraphContent。

看我这题回答的代码

https://whosebug.com/a/46459350/4107421

这样您就可以为您的 post 添加标题、描述甚至图像。

它适用于 ShareDialog.show() 但不幸的是根据我的经验它不适用于 MessageDialog.show()