Android Facebook分享对话框的内容未在主页中显示

12

我在我的应用程序中使用“ShareDialog”来分享链接到Facebook动态。当我发布一个链接时,它只显示在用户的时间线上,而不是主页上。我做错了什么?

我大致像这样做:

// This is how i invokes the shareDialog
FacebookDialog shareDialog = createShareDialogBuilderForLink().build();

private FacebookDialog.ShareDialogBuilder createShareDialogBuilderForLink() {
    return new FacebookDialog.ShareDialogBuilder(this)
    .setPicture("picture url")
    .setName("name")
    .setLink("link url");
}

用户时间轴:

enter image description here

主页:

enter image description here

主页仅显示从我设置的Google Play应用程序链接中获取的应用程序名称,不显示链接内容(描述、名称、标题等)。


我该如何使Facebook主页上的链接获取共享对话框中的内容而不是链接本身? - Kostadin Georgiev
1
你找到解决方案了吗? - Krishnabhadra
我认为当你设置一个链接时,它会覆盖所有其他属性... - StuStirling
你能找到任何解决方案吗?我也遇到了同样的问题。 - lacas
嗯,我就这样离开它了... - Kostadin Georgiev
2个回答

1
因为用户选择不公开分享链接,你是否看到了链接共享时间旁边的小锁图标?它表示该链接未公开分享,如果是公开的,图标会变成地球仪图标。
现在该怎么办?
1)我不知道Facebook API是否允许在帖子上设置权限,但你可以尝试,查看API文档
2)许多用户默认将共享权限设置为私有,请查看您的账户是否默认为私有,方法是进入Facebook设置。

这不是原因。我刚刚用公开分享的链接测试了同样的事情,结果显示与提问者报告的行为相同。 - Damnum
哦,也许是这样!正如我所说,您需要从Facebook API设置权限,这是Facebook API文档的链接,它明确说明了这一点,请阅读完整内容:https://developers.facebook.com/docs/facebook-login/android/permissions - rusted brain

0

这个怎么样?

ShareDialog shareDialog = new ShareDialog(this);
if (ShareDialog.canShow(ShareLinkContent.class)) {
    ShareLinkContent linkContent = new ShareLinkContent.Builder()
            .setContentTitle("Title")
            .setContentDescription("Description")
            .setContentUrl(Uri.parse("Url"))
            .build();

    shareDialog.show(linkContent);
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接