在安卓系统中,Facebook分享对话框没有显示内容。

4

我正在尝试使用Facebook SDK在我的Android应用程序中实现分享功能,已经完全按照Facebook页面上的文档所说进行了实现。在调用分享对话框之前,我会检查会话和发布动态权限,如下所示。

            if (FacebookDialog.canPresentShareDialog(getApplicationContext(),
                FacebookDialog.ShareDialogFeature.SHARE_DIALOG)) {
            // Publish the post using the Share Dialog
            FacebookDialog shareDialog = new FacebookDialog.ShareDialogBuilder(this)
                    .setName("Hello Facebook")
                    .setDescription("The 'Hello Facebook' sample application showcases simple Facebook integration")
                    .setLink("http://developers.facebook.com/android")
                    .build();
            }

分享对话框出现了,但是没有我在.setLink()等中添加的内容。为确保我没有错过任何配置,请测试Facebook SDK示例中的HelloFacebookSample,结果发现有同样的问题。当我点击“发布状态更新”时,我看到一个空的分享框。
我正在运行Android 4.4.2上的Nexus 4手机,并使用Facebook应用程序版本9.0.0.26.28。是否需要对我的设置进行某些操作才能使其正常工作?奇怪的是,我记得之前看到对话框是被填充的,所以一定是我做了什么导致它无法工作。
如果您能提供任何帮助,将不胜感激。我已经因为这个问题苦恼了一周多。

这个有帮助吗?http://stackoverflow.com/a/23659459/3518278 - usr30911
我在你提供的页面上找不到setName或setDescription。根据平台政策,预填内容是不允许的,所以这可能是它们没有起作用的原因。 - WizKid
@WizKid setName或setDescription是从Facebook示例HelloFacebookSample中复制的,但即使我只测试.setLink,它也不起作用。 但我发现,如果我最终发布,这些详细信息会显示在帖子上,即使它们没有显示在帖子对话框中。 必须是Facebook的错误。 - stervale
你使用的SDK版本是多少?你是否尝试过其他链接(比如纽约时报的链接)? - Ming Li
你解决了这个问题吗,@stervale?我也遇到了同样的问题。 - andy mcevoy
同样的问题,有解决方案吗? - emresancaktar
2个回答

1
我相信这是Facebook的一个bug,因为分享可以成功发布到Facebook页面,只是在我进行分享时分享对话框似乎是空白的。事实上,同一应用在其他手机上运行良好,所以我的设置中有一些特殊的东西触发了这个bug。
我已经提交了一个Facebook bug并希望它能得到修复。
感谢大家的回答。

你找到任何解决方案了吗?我也有完全相同的问题。 - emresancaktar

0

来自我的应用程序的示例:

在MainActivity的开头定义了uiHelper的定义:

private UiLifecycleHelper uiHelper;

在onCreate函数中:

uiHelper = new UiLifecycleHelper(this, null);
uiHelper.onCreate(savedInstanceState);

在我的应用程序的相应部分中,调用显示实际共享对话框:

FacebookDialog shareDialog = new FacebookDialog.ShareDialogBuilder(this)
    .setLink("Hello Facebook")
    .setName("The 'Hello Facebook' sample application showcases simple Facebook integration")
    .setCaption("http://developers.facebook.com/android")
    .setPicture("imageURL")
    .build();
    uiHelper.trackPendingDialogCall(shareDialog.present());

以防万一,我想提醒您需要将您的Debug Android哈希或公共密钥哈希添加到Facebook控制面板下的Android选项卡中的应用程序设置中(有关密钥哈希生成的更多信息:Facebook Android Generate Key Hash)。

我希望我的任何建议都能帮助您,我也遇到了很多Facebook SDK的问题。

您的logcat是否给出任何错误或提示,说明为什么会发生这种情况?


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