Foursquare API:在重定向之前检查用户是否拥有iphone应用程序

时间:2012-02-06 10:59:21

标签: javascript api web-applications foursquare

我正在使用Foursquare API开发一个有趣的小项目。在这个项目中,我有一个PHP / HTML页面,可以将用户重定向到foursquare应用程序。 Android没有明显的问题,因为我们应该使用的方法“很好地降级”。

在我的HTML页面中,我使用javascript来检测用户正在使用哪部手机。如果它检测到iOS,则页面会重定向到Foursquare应用程序,使用的网址如下所示:“{foursquare:// users / USER_ID”:https://developer.foursquare.com/resources/client

在此页面上,它表示我应该“仅在用户安装了foursquare应用程序时才尝试链接到这些URL”。我按照Foursquare给出的链接,但似乎给出了iOS应用程序的规格,而不是网页。

显然,当我尝试在没有安装应用的情况下打开“foursquare://”链接时,Safari根本不喜欢。

有没有办法检测是否安装了Foursquare应用程序?

PS:我的“代码”看起来像这样:

if(navigator.userAgent.match(/iPhone/i) || navigator.userAgent.match(/iPad/i) || navigator.userAgent.match(/iPod/i)){
    location.href='foursquare://venues/VENUE_ID';
}else{
    location.href='http://m.foursquare.com/venue/VENUE_ID';
}

编辑:这是这个问题的重复:Ajax call to check if native iPhone application exists on the device? - Thx @Jonathan Levison

1 个答案:

答案 0 :(得分:1)

我认为你要的是:Ajax call to check if native iPhone application exists on the device?

看来(从那个问题)你无法确定是否通过safari移动网络浏览器安装了本机应用程序:(