我为此搜索了很多,但找不到答案。我需要在 Mobile Safari 上检查是否可以处理某个协议(这样可以确定设备上是否安装了某个应用程序)。
这可以以某种方式完成。如果您打开移动 twitter(并且您已安装该应用程序),它将显示一个进入该应用程序的按钮。Instagram 也是如此:如果您在浏览器上打开照片,并且您拥有该应用程序,它会显示一个按钮“在应用程序中打开”,否则它会显示一个链接“免费下载 Instagram!” (这与智能横幅不同)。
有谁知道这是怎么做到的?
谢谢。
我为此搜索了很多,但找不到答案。我需要在 Mobile Safari 上检查是否可以处理某个协议(这样可以确定设备上是否安装了某个应用程序)。
这可以以某种方式完成。如果您打开移动 twitter(并且您已安装该应用程序),它将显示一个进入该应用程序的按钮。Instagram 也是如此:如果您在浏览器上打开照片,并且您拥有该应用程序,它会显示一个按钮“在应用程序中打开”,否则它会显示一个链接“免费下载 Instagram!” (这与智能横幅不同)。
有谁知道这是怎么做到的?
谢谢。
尝试这样的事情:
(function () {
setTimeout(function () {
console.log('protocol is not available')
window.location = 'http://somewhere-else';
}, 1000);
window.open('your_protocol://', '_self');
}())
这里还讨论了许多其他方法:是否可以为 iPhone 应用程序(如 YouTube 和地图)注册基于 http+域的 URL 方案?