首页 > 解决方案 > 从 Facebook 的内置浏览器打开 Facebook Messenger 的问题

问题描述

作为促销活动的一部分,我希望将网页分享到 Facebook Messenger。一切似乎都在普通的桌面和移动浏览器中运行,但是在 Facebook 的内置浏览器中,Facebook Messenger 应用程序没有打开,页面只是锚回到顶部。

在 Facebook 开发者文档中,建议使用以下内容:

window.open('fb-messenger://share?link=' + encodeURIComponent(link) + '&app_id=XXXX');

但我也尝试过:

window.location.href = 'fb-messenger://share?link=' + encodeURIComponent(link) + '&app_id=XXXX';

要共享的 CTA 是一个带有 href="#" 的简单元素(假设这就是 Facebook 浏览器将我跳回页面顶部的原因),并带有一个点击事件以将用户触发到 Facebook Messenger,并预先填充了页面的共享信息. 例如:

$('#facebookShare').on('click', function() {
    window.location.href = 'fb-messenger://share?link=' + encodeURIComponent(link) + '&app_id=XXXX';
});

这一切都在移动设备上的 Chrome 和 Safari 中运行良好,但只要它在 Facebook 的内置浏览器中运行,它就什么也做不了。

对于从 Facebook 应用程序的内置浏览器中打开 Facebook Messenger 的任何帮助或指导,我们将不胜感激。

标签: javascripthtmlfacebooksharingmessenger

解决方案


我认为 Facebook 浏览器不可能。根据文档

该链接适用于 iOS 和 Android 平台上的移动网站,带有本机应用程序,但深度链接不适用于 web 视图。

内置的 Facebook 浏览器是一个webview,所以看起来不可能。


推荐阅读