从 safari 到 facebook 应用程序的 Facebook 个人资料 link

Facebook profile link from safari to facebook app

我正在制作一个个人网站,其中 link 指向 Facebook 个人资料。如果您从 iOS 设备访问该网站,我希望 link 在应用程序中打开,而不是在 safari 中打开,因为很多人没有在 safari 中登录。

现在这可以通过使用 "fb://profile/" 而不是 link facebook.com/ 来完成。我使用以下简单代码来切换 links:

$(function(){
  var iOS = ( navigator.userAgent.match(/(iPhone)/g) ? true : false );
  if (iOS){
    var href= $(".fb-link").attr("href");
    var res = href.split("/");
    var username = res[res.length - 1];

    $(".fb-link").attr("href", "fb://profile/" + username);
  }
});

唯一的问题是当用户没有应用程序时,它不仅不会在应用程序中打开,而且无法完全打开。

有没有办法测试是否安装了应用程序?我知道当我在 iOS 本机应用程序中编程时,我可以测试 fb:// 是否响应,然后我可以使用 link,但 safari 的限制更多。我知道这可能是不可能的,如果有人对此有一些经验,请尝试一下。

另外 - android 有类似的东西吗?我对此没有太多经验。

谢谢

Safari(从网页)无法确定应用程序是否已安装。您唯一可以尝试做的是在 javascript 中执行 fb://profile 重定向,然后在您的页面上设置超时以查看重定向是否成功。但这不是最佳选择,因为可能会弹出错误对话框。

对于 Android,您应该直接访问 www url,然后让 Android 应用程序通过其自己的 intent 过滤器处理它。