强制Facebook在智能手机的外部浏览器中打开链接

时间:2017-05-02 20:50:39

标签: javascript html

如何在Facebook帖子中发布我的网站链接,并在使用智能手机应用程序时在用户的外部浏览器中打开该链接,而不是Facebook的本机浏览器,但显示不正确?我的页面是http://www.hannabery.com

5 个答案:

答案 0 :(得分:1)

这样做不能(出于明显的安全原因)但有方法

1.为您的网站创建一个应用

如果您为自己的网站创建了一个应用程序,那么就不需要在中间使用facebook了

2.创建一个显示Facebook页面的应用

只要它是你的页面,而不是误导,那么这是允许的,你可以在android studio中做一些非常整洁的东西

例如,如果您发布了类似的内容

mywebsite.com/forum /

这个很酷的功能,您可以使用.endsWith("/forum/")从那里开始,当点击一个以" / forum /"

结尾的链接时,您可以使应用程序执行任何操作

我做过的一些事情

  1. 重定向到该链接
  2. 打开浏览器以显示链接
  3. 转到app的一部分
  4. 显示对话框
  5. 你可以做的更多

答案 1 :(得分:0)

希望这种方式可以为您提供帮助:

var ifc = document.createElement("div");
ifc.innerHTML = `<iframe src='${browserScheme}${target}' style='width:0;height:0;border:0; border:none;visibility: hidden;'></iframe>`;
document.body.appendChild(ifc);

完整来源和示例:https://github.com/huantt/force-open-browser/tree/master

答案 2 :(得分:0)

https://github.com/huantt/force-open-browser/tree/master我认为仅当在Messenger上发送链接时,此功能才有效。但是,单击fb Messenger的任何链接都会询问您喜欢哪种浏览器。我在页面上使用了代码,并将链接发布到FB上,并由FB浏览器将其打开。多么烦人:(

答案 3 :(得分:0)

在Android上,您可以使用Firebase Dynamic Links允许用户通过外部浏览器打开特定的URL。我猜想Android Webview配备了某些Firebase SDK,因此该方法仅适用于Android。用户仍然可以通过iOS上的应用内浏览器打开链接。

  1. Create a project和动态链接的域

  2. 手动创建链接,例如:https://DOMAIN.page.link/?link=YOUR_DEST_URL (或者有many other ways个链接)

例如,将此链接发布到Facebook或Messenger上并尝试:

https://fugle.page.link/trade-landing-page

注意:动态链接主要用于在平台和应用安装之间提供一致且流畅的UX。我发现这只是一个副作用,可能有助于回答这个问题,而且可能不会持续很长时间,因此不应作为最终解决方案。

答案 4 :(得分:0)

如果您的 PWA 无法在 Facebook(插入咒语)移动浏览器中正确运行。使用动态链接会将其强制发送到常规浏览器。但不要使用您的自定义域。改用https://YOURDOMAIN.page.link

https://firebase.google.com/docs/dynamic-links/custom-domains

也不要跳过预览页面!