フォースクエアAPI:ユーザーがリダイレクトする前にiphoneアプリを持っているかどうかを確認する

I'm developing a fun little project using Foursquare API. In this project, I have a PHP/HTML page that redirects users to the foursquare app. There is no apparent issue with Android as the method we ought to use "degrade nicely".

In my HTML page, I use JavaScript to detect which phone the user is using. If it detects iOS, the page redirect to the Foursquare App using a URL like this "foursquare://users/USER_ID" found here : https://developer.foursquare.com/resources/client

このページでは、「四角形のアプリケーションがインストールされている場合にのみ、これらのURLにリンクしてください」と言います。私はFoursquareのリンクをたどったが、iOSアプリの仕様ではなく、Webページの仕様を与えるようだ。

明らかに、Safariは、アプリがインストールされていない状態で「foursquare://」リンクを開こうとすると、まったく気に入らない。

Is there a way to detect if the Foursquare App is installed ?

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';
}

編集:これは、この質問の重複のようです:ネイティブiPhoneアプリケーションがデバイスに存在するかどうかを確認するAjaxコール? - Thx @Jonathan Levison

1

1 答え

I think you are asking for something like: Ajax call to check if native iPhone application exists on the device?

そして、その質問から、ネイティブアプリがSafariモバイルウェブブラウザ経由でインストールされているかどうかを知ることはできません。(

1
追加された
私は本当に運が尽きているようだ!私が見つけられなかったリンクをありがとう;)
追加された 著者 Jibou,
JavaScript - 日本のコミュニティ
JavaScript - 日本のコミュニティ
2 参加者の

日本人コミュニティのjavascript