【问题标题】:Facebook share dialog not showing from fragmentFacebook 分享对话框未从片段中显示
【发布时间】:2017-03-27 22:32:58
【问题描述】:

我正在使用以下代码在 facebook 上分享 url+图片:

public void simpleShare(String toShare, Uri uriImage) {
        Log.d(TAG,"simpleShare, toShare: " + toShare + ", uri: " + uriImage);
        ShareDialog shareDialog = new ShareDialog(getActivity());

        ShareLinkContent linkContent = new ShareLinkContent.Builder()
                .setImageUrl(uriImage)
                .setContentUrl(Uri.parse(toShare))
                .build();

        shareDialog.show(linkContent);

    }

此代码位于扩展 DialogFragment 的类中。如果从 Activity 调用,facebook 对话框会正确显示,但如果从 Fragment 调用它则无法正常工作。这仅在 Android 4 上发生,而不在 Android 5 上发生(即在 Android 5 上即使从片段中也能正常工作)。知道为什么会这样吗? 我可以确保来自活动或片段的调用完全相同,我使用日志来比较它们。

谢谢!

【问题讨论】:

    标签: android facebook dialog


    【解决方案1】:

    尝试使用以下代码: 而不是 getActivity 使用该类,并首先删除 imageurl 解析到 contentur

    ShareLinkContent content = new ShareLinkContent.Builder()
                    .setContentUrl(Uri.parse(url))
                    .setQuote(msg)
                    .build();
    
            if (ShareDialog.canShow(ShareLinkContent.class)) {
                ShareDialog.show(activity, content);
                result.success("success");
            }
    

    新的 facebook SDK 更改了一些使对话共享运行的方式,但它们并没有为我们提供很多关于以及如何运行的文档

    【讨论】:

      猜你喜欢
      • 2014-05-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-10-08
      • 2011-07-20
      • 2013-05-26
      • 1970-01-01
      • 2015-04-15
      相关资源
      最近更新 更多