以下是点击按钮后成功分享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”,并在其中添加一行。当我发布链接时,它是共享的,没有标题和描述。我认为这是因为它们已被弃用。
我如何添加标题和说明?被弃用的条款取代了什么?这不是预先填写帖子,Facebook完全摆脱这些功能是没有意义的。我尝试了一些不同的链接作为URL,没有一个对这个问题产生影响。
非常感谢提前。
修改:请注意,元标记不是一个选项,因为如果我要链接到Google Play商店中的某个应用,我无法控制该网页的标记。我希望从应用程序中提供标题/描述,就像之前使用所提及的弃用功能一样。
答案 0 :(得分:6)
我找到了一个合适的方法来解决这个问题,但并不是一个特别取代标题和描述的方法。在不预先填写用户文本框的情况下自动向帖子添加文字的另一种方法是使用.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);
}
}
如果有人知道如何正确替换已弃用的功能,如果没有像我刚才提供的那样不同的替代方案,请发布它,我会将其标记为已解决。
非常感谢。
答案 1 :(得分:0)
您可以使用ShareOpenGraphAtent和ShareOpenGraphObject。
看看我在这个问题中回答的代码。
https://stackoverflow.com/a/46459350/4107421
这样您就可以在帖子中添加标题,说明甚至图像。
适用于ShareDialog.show(),但遗憾的是根据我的经验,它不适用于MessageDialog.show()