在 Facebook 帖子中打开 Chrome/Firefox(Android 操作系统)的 URL 方案

4
我们有一个网页需要在Android的Chrome/Firefox上打开才能完全显示内容。但当我们在Facebook上发布链接时,它总是用自己的浏览器打开链接。
所以,我们正在查看是否有办法从Facebook帖子中强制在Chrome浏览器中打开链接。
以下是我们尝试过的一些方法:
  1. 使用Chrome URL方案(googlechrome://navigate?url=example.com)
  2. 使用window.location.href、window.open (url,"_system")等
  3. 甚至使用意图从Web浏览器启动Chrome: 如何在Google Chrome中启动任何网站链接的意图
如果您有任何想法或确认无法强制用户从Facebook浏览器转到Chrome(Android操作系统),请告诉我们。

这是一个针对Facebook开发人员的问题。同时,完全由他们决定 - 他们希望如何在其应用程序中打开链接。 - Vladyslav Matviienko
@Vladyslav:我们已经检查过了,我们可以在iOS Facebook应用程序上打开Chrome/Firefox。但是我们还没有找到解决方案,使其与Android Facebook应用程序配合使用。我们已经在developer.facebook.com上发布了一条消息,仍在等待他们的回复。 - Nhan Nguyen Tri
1个回答

12

最近,当使用target="_blank"的href链接时,googlechrome://navigate?url=example.com方法在Android/iOS上的Facebook链接上均有效。但是,最近这种方法在Android Facebook上已经不起作用了。我找到的唯一解决方法是使用一个intent: 链接来打开链接,它不指定Chrome的包路径。它将使用默认浏览器打开链接,因此不能保证是Chrome。具体的链接格式如下:

window.location = 'intent:https://example.com#Intent;end';

看起来,该intent会匹配一个通用URL,以使用默认选定的浏览器(当没有指定包名时)。


你,我的朋友,我欠你一个聚会。解决了我多天以来卡住的问题,谢谢! - Pranay Dutta
这非常有帮助,在2021年1月运行良好。谢谢! - Punit S
这在安卓上很好用,你有什么解决iOS的办法吗? - Drunken Daddy
为了在iOS Facebook上启动Chrome,我们使用了window.location="googlechrome://example.com"。然而,这对于Facebook Messenger无效,并且仅在安装了Chrome并可能显示权限提示时才有效。 - David Western
1
@DavidWestern 这真的有效吗?Chrome已安装在手机上,但仍无法在Chrome中打开。(Android 11) - user3304007
在我们的测试中,此方法仅适用于在Facebook应用内浏览器打开的页面。它无法在Facebook Messenger中加载的页面中使用。我的测试设备是Android 11。它不会强制选择Chrome,但会使用在Android中注册的“默认”浏览器。通常情况下是Chrome,但也可能是其他浏览器,比如Edge。我们的目的是在Facebook外部打开页面,以便自动打印,这在应用内不受支持。 - David Western

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接