Facebook Cordova 插件 - 共享照片(没有链接)导致空的共享对话框
Posted
技术标签:
【中文标题】Facebook Cordova 插件 - 共享照片(没有链接)导致空的共享对话框【英文标题】:Facebook Cordova plugin - sharing a photo (with no link) results in empty Share Dialog 【发布时间】:2017-06-03 11:09:07 【问题描述】:我在 android 上的 Meteor 移动应用中使用了 cordova Facebook 插件 (https://github.com/jeduan/cordova-plugin-facebook4)。
我可以成功地使用共享对话框来共享带有链接的照片(如此处的插件示例:https://github.com/jeduan/cordova-plugin-facebook4#show-a-dialog)。即...
method: "share",
href: "http://example.com",
caption: "Such caption, very feed.",
description: "Much description",
picture: 'http://example.com/image.png'
但是,如果我尝试分享仅照片(即没有网站链接)...
facebookConnectPlugin.showDialog(
method: "share",
picture:'https://www.google.co.jp/logos/doodles/2014/doodle-4-google-2014-japan-winner-5109465267306496.2-hp.png',
name:'Test Post',
message:'First photo post',
caption: 'Testing using phonegap plugin',
description: 'Posting photo using phonegap facebook plugin'
, function (response)
console.log(response)
, function (response)
console.log(response)
);
....共享对话框打开,但为空。
这完全是插件的 github (https://github.com/jeduan/cordova-plugin-facebook4#publish-a-photo) 上给出的最后一个示例,所以我认为这是一个有效的用例。
有什么想法吗?
【问题讨论】:
您的设备中是否有原生 facebook 应用程序? 是的。它有应用程序。对话框打开......它只是空的。 【参考方案1】:参考这个:
-
https://github.com/jeduan/cordova-plugin-facebook4/issues/36
Facebook share content only shares URL in ios 9
https://github.com/jeduan/cordova-plugin-facebook4/issues/221
如果它仍然没有解决你的问题,那么这个插件有官方未解决的问题,你需要更改插件。
【讨论】:
【参考方案2】:如果没有提供链接,您需要将方法调整为“feed”而不是“share”。
变化:
method: "share",
收件人:
method: "feed",
【讨论】:
无论方法是 share 还是 feed,结果都相同 - 对话框打开,但完全为空。【参考方案3】:我遇到了同样的问题,终于解决了!如何?我刚刚这样做了:
method: "share",
href: 'url_of_image_or_photo_to_share'
即使这样做了,共享对话框仍然显示为链接或小图标!所以我继续点击帖子,但看到它就像我在 Facebook 上所期望的那样。
试一试!
【讨论】:
【参考方案4】:1. https 图像 url 的不受信任的 ssl 证书
如果证书不受 facebook 信任,则不会预览图像。见https://rameerez.com/facebook-sharing-not-scraping-url-correctly-with-https-links/
2。图片尚未被 facebook 缓存
https://developers.facebook.com/docs/sharing/best-practices/
预缓存图片
第一次分享内容时,Facebook 爬虫会 从共享的 URL 中抓取并缓存元数据。爬虫必须 在渲染之前至少查看一次图像。这意味着 第一个分享内容的人不会看到渲染的 图片:
要验证这是否是问题所在,请使用 facebook 共享调试器:
https://developers.facebook.com/tools/debug/
【讨论】:
以上是关于Facebook Cordova 插件 - 共享照片(没有链接)导致空的共享对话框的主要内容,如果未能解决你的问题,请参考以下文章
Facebook 明确共享的操作不适用于 Cordova 应用程序
Phonegap/cordova 社交分享插件,重复推文问题
桌面/移动标准网页中的phonegap / cordova社交共享插件