Facebook SDK 共享带有文本的图像



在使用Facebook SDK之前,我们曾经通过UIActivityViewController进行共享,因为Facebook不允许我们预先填写用户共享的信息,我们的解决方案是使用正在共享的图像的用户描述信息UIPasteboard.general.string。因此,应用程序将切换到信使,用户可以粘贴。在我们开始使用Facebook SDK之前,这一直很好。

现在看来,当它打开 Messenger 时,UIPasteboard.general.string被重置,我们不再能够将图像描述复制到剪贴板。

这就是我分享给信使的方式:

let sharePhoto = FBSDKSharePhoto()
sharePhoto.image = image
let content = FBSDKSharePhotoContent()
content.photos = [sharePhoto]
FBSDKMessageDialog.show(with: content, delegate: delegate)

是的,在 FB lib 更新后,我也堆积在那个员工身上。至于我 - 我想出了图像上的网络链接,如下所示。因此 - 您不需要要求用户粘贴某些内容。您可以自己完成并将其粘贴到标题或说明中。

let content = LinkShareContent(url: url,
                                       title: title,
                                       description: description,
                                       quote: nil,
                                       imageURL: imageURL)
        let dialog = ShareDialog(content: content)
        dialog.presentingViewController = parentVC
        dialog.mode = .automatic
        dialog.completion = { result in
             ...
        }
        try? dialog.show()

Facebook不支持UI共享图像和文本。如果要同时共享图像和文本,可以从应用的设置创建自定义故事,并将其作为开放式图形故事共享。这是文档。

最新更新