如果应用程序存在,则链接到打开的Facebook应用程序,否则网页

时间:2016-10-14 08:20:52

标签: javascript android html ios facebook

我正在寻找以下解决方案。我们希望下周发送一个HTML邮件,目前有一些问题。这是我们第一次尝试这样做,主要区别在于它现在包含链接到我们脸书的按钮。

邮件程序是响应式的,所以我们正在寻找一种解决方案,它将在浏览器中打开网站的桌面版本,当从移动设备查看时,检查应用程序是否已安装并打开,如果没有打开链接而在浏览器中。

通过在线广泛搜索和Stack Overflow,我逐渐意识到Android和iOS允许这样做的方式有所不同。请参阅下面我到目前为止尝试的解决方案:



.mobile-link {
   display: none;
}

@media screen and (max-device-width: 767px) and (orientation: portrait) {
    .desktop-link {
        display: none;
    }
    .mobile-link {
        display: block;
    }
}

@media screen and (max-device-width: 1024px) and (orientation: landscape) {
    .desktop-link {
        display: none;
    }
    .mobile-link {
        display: block;
    }
}

<a class='mobile-link' onclick='
setTimeout(function () { window.location = 'www.facebook.com/profileid'; }, 2500);
window.location = 'fb://facewebmodal/=pagename';'>
    <img src='some.url' />
 </a>
 <a class='desktop-link' href='www.facebook.com/profileid'>
    <img src='some.url' />
 </a>
&#13;
&#13;
&#13;

这不适用于iPhone,虽然我以前的尝试是(我改变了它以使其适用于Android,但仍然无效)。在我之前的尝试中,我有:

<a class='mobile-link' onclick='
    setTimeout(function () { window.location = 'www.facebook.com/profileid'; }, 2500);
    window.location = 'fb://profile/id';'>
        <img src='some.url' />
     </a>

适用于iOS但适用于Android。

根据我的理解,facebook似乎会改变用户定期以这种方式定位应用的方式。

有人可以向我提供最新的方法来定位这类链接中的iOS和Android应用吗?

1 个答案:

答案 0 :(得分:1)

以下是您可以找到合适答案的几个链接:

首先,您需要检查浏览器是在移动设备中还是在桌面中,然后根据您的要求应用以下链接代码。这是浏览器检测链接: - Detecting a mobile browser

1)http://findnerd.com/list/view/How-to-detect-if-an-app-is-installed-in-IOS-or-ANDROID-with-the-help-of-javascript-and-Deep-Linking/4287/

2)How to check if an app is installed from a web-page on an iPhone?

3)iPhone browser: Checking if iPhone app is installed from browser

如果您还需要其他任何内容,请告诉我。