2016-03-08 9 views
16

URLスキームを使用してiosアプリケーションを開きたいとします。私はこれを使ってアプリを開くことができます。 しかし、私は、アプリがインストールされていない場合は、アプリストアを開いて、ユーザーがアプリをダウンロードできる場所にする必要があります。 これは可能ですか?どうやってやるの?賢いURLを使用してiosアプリケーションを開くには?

EDIT 説明する質問のステップ:

  1. は、私は、URLと私の受信トレイにメールを持っています。
  2. 私はURLをクリックして をクリックします。アプリが電話にインストールされている場合は、アプリが起動します。 ii。それ以外の場合は、アプリストアを開いてアプリをダウンロードします。

アプリがデバイスにインストールされていない場合、その後、あなたはコードの行の下に使用してアプリケーションストアを開くことができ

+0

それはそれへの答えはすでに存在し –

+1

のVivekシンハ@役立つかどうかを確認し、ここでこの答えを参照してください答えを確認してください:[かどうかをプログラムで検出する http://stackoverflow.com/a/3808757/1447518 – Idan

+3

が重複する可能性をアプリはiPhoneにインストールされている](http://stackoverflow.com/questions/3808691/detecting-programmatically-whether-an-app-is-installed-on-iphone) – dr0i

答えて

5

を、私は私のサーバー側のコード経由で取り扱わ:ここではあなたのような電子メールのリンクを作成するために正確にどのようにカバーするドキュメントのページを説明します

if ((navigator.userAgent.match(/iPhone/i)) || (navigator.userAgent.match(/iPod/i))) { 
location.replace("com.myapp://"); 
setTimeout(function() { 
       if (!document.webkitHidden) { 
        location.replace("https://itunes.apple.com/app/xxxxxxxx"); 
       } 
      }, 25);} 
else if ((navigator.userAgent.match(/android/i)) || (navigator.userAgent.match(/Android/i))) { 
location.replace("https://play.google.com/store/apps/details?id=packagename&hl=en");} 
else { 
location.replace("http://www.example.com");} 

私はwww.mysite.com/downloadページ&でこれを置きますキャンペーンを通じてこのURLを共有してください。

0

ありがとう:

NSString *iTunesUrlofApp = @"itms://itunes.apple.com/us/app/apple-store/..."; 
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:iTunesUrlofApp]]; 

はコードの下に試してみてください。

if([[UIApplication sharedApplication] canOpenURL:url]){ 
    // Means your app is installed, and it can be open 
    [[UIApplication sharedApplication] openURL:url]; 
} 
else{ 
    //Your app is not installed so, Open app store with your apps iTunes Url 
    NSString *iTunesUrlofApp = @"itms://itunes.apple.com/us/app/apple-store/..."; 
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:iTunesUrlofApp]]; 

} 

iOS 5以降では、https://を使用してリダイレクトを回避することもできます。

編集:

インストールした場合は、URLからアプリを開くためのリンクをチェックしてください:Universal linksのURLからアプリを開きます。繰延ディープリンク(Deep Linkingと呼ばれているあなたが記述している

+1

メールボックスにURLがあるだけで、アプリケーション(インストールされている場合)またはアプリストア(該当しない場合)を開きます。 –

+0

OPがブラウザからURLを開こうとしました。 –

2

は、特定のコンテンツにも、直接、あなたのアプリケーションを開くためのリンクを使用してを指し、Deferredは、それはアプリが最初にインストールされていない場合でも動作することを意味します)。

残念ながら、iOSまたはAndroidでこれを達成するためのネイティブな方法はありません。アプリケーションがインストールされていない場合、常にが失敗するため、URLスキームは機能しません。 iOS 9のアップルの新しいUniversal Linksが近づいても、あなたのウェブサイトからApp Storeへのリダイレクトを処理する必要があります。

無料サービスBranch.io(完全公開:彼らは私と一緒に働いてとても素晴らしいです)あなたのためにこれすべてを処理することができます。 https://dev.branch.io/features/email-campaigns/overview/

関連する問題