是否可以在在 native 应用程序中打开分享对话框的网站上拥有在 Facebook 上分享链接?
当前行为:
现在点击 Facebook 分享链接会打开基于网络的分享对话框,这很糟糕,因为大多数移动 Facebook 用户使用的是 native 应用程序,因此没有在他们的浏览器上登录。因此,网络共享对话框会提示他们输入他们的用户凭据 - 这可能会导致他们最终不共享。
理想行为:
单击 Facebook 上的分享链接会在本地 Facebook 应用程序中打开分享对话框,用户已在其中登录。
提前感谢您的帮助!
最佳答案
截至目前,没有官方方法可以实现这一目标。不过,它可以由 Facebook 实现,使用他们的自定义 URL 方案转发他们的网络共享对话框。因此,如果您使用 officially documented way 打开此对话框,您将获得此功能而无需进一步更改,只要它可用。
无需任何先决条件,使用官方网络共享对话框的最简单方法是链接到此 URL:
https://www.facebook.com/dialog/share?
app_id=145634995501895
&display=popup
&href=URL_TO_SHARE
&redirect_uri=RETURN_URL
您将 URL_TO_SHARE 和 RETURN_URL 替换为正确的 URL 编码值。或者您包含 Facebook JS-SDK 并使用经典的分享按钮或 sharing on the web 中描述的其他方式。
仅出于完整性考虑:在 iOS 和 Android 上的 native 应用程序中,如果用户安装了 Facebook 应用程序,则可以直接链接到 Facebook 应用程序。请参阅来自 iOS 或 android 的共享。由于情况并非总是如此,您必须使用相应平台的特定 Facebook SDK 进行检查,并回退到基于 Web 的对话框。
附带说明:我强烈建议您不要使用 Facebook 应用注册的未正式记录的 URL 方案。虽然如果从安装了 Facebook 应用程序的设备访问该网站,它们可能会起作用,但在没有安装 Facebook 应用程序的设备上,尤其是任何 PC 或 Mac,它们会变成死链接或奇怪的浏览器警告。即使您检查所有这些情况,Facebook has already changed their URL-Schemes 也可能随时再次这样做,从而破坏您的链接,或者 - 可能更糟 - 导致未定义的行为。
关于android - 是否可以生成一个 'share on Facebook' 链接以在 Android/iOS/移动设备上打开 native Facebook 应用程序而不是网络共享对话框?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26106447/