检查移动版Safari是否可以处理特定协议

时间:2013-03-03 02:30:06

标签: javascript ios mobile-safari

我为此搜索了很多,但找不到答案。我需要在Mobile Safari上检查是否可以处理某个协议(这样就可以找出设备上是否安装了某个应用程序)。

这可以以某种方式完成。如果您打开移动Twitter(并且安装了应用程序),它将显示一个带有应用程序的按钮。 与Instagram相同:如果您在浏览器上打开照片,并且您有应用程序,它会显示一个“在应用程序中打开”按钮,否则会显示“免费下载Instagram”链接。 (这与智能横幅不同)。

有谁知道这是怎么做的?

感谢。

1 个答案:

答案 0 :(得分:2)

尝试这样的事情:

(function () {
    setTimeout(function () {
        console.log('protocol is not available')
        window.location = 'http://somewhere-else';
    }, 1000);

    window.open('your_protocol://', '_self');
}())

此处还讨论了许多其他方法:Is it possible to register a http+domain-based URL Scheme for iPhone apps, like YouTube and Maps?