1. ホーム
  2. ios

インストールされている場合はアプリケーションに、そうでない場合はApp Storeにリダイレクトされる

2023-08-12 17:15:54

質問

iOS ではカスタム スキーム (例: so://) を登録することでアプリに直接リンクすることが可能で、itunes を介して appstore でアプリにリンクすることも可能なのは知っていますが、これはどのように行うのでしょうか。

多くの場合、理想的なフローは、アプリにリダイレクトするリンクを提供することです。 もし に、そうでない場合はストアにリダイレクトするリンクを提供することです。これは可能ですか?可能な場合、どのように可能ですか?

わかりやすくするために追加 このシナリオは、私がアプリケーションのグループに参加するように誘う電子メールからのリンク(http)を私のiPhoneで開くというものです。ユーザーがそのデバイスにアプリをインストールしている場合は開くはずですが、そうでない場合は http リンクは itunes にリダイレクトされるはずです。

どのように解決するのですか?

これを確認する方法はありません。 しかし、いい回避策があります。

そのアイデアは基本的にこうです。

  1. 最初にアプリを開くときは、アプリ内からサーバー上の定義済みの URL にアクセスしてモバイル サファリを開きます。
  2. その URL で、ユーザーのモバイル サファリに appInstalled のような Cookie を設定します。
  3. その後、登録されたスキームでユーザーをアプリにキックバックします(FBがSSOで行うのと同じです)。
  4. すべての電子メール リンクは Web サイトを指しますが、Web サイトでは、ブラウザがモバイル Safari であるかどうか、および appInstalled Cookie が存在するかどうかを確認します。
  5. ブラウザがモバイル Safari でないか、Cookie が見つからない場合は、AppStore にリダイレクトするか、Web ページにとどまります。
  6. 4の条件が真の場合、登録されたスキームでアプリにリダイレクトします。
  7. アプリがユーザーによって削除され、カスタム URL スキームが失敗した場合、appstore へのフェールセーフ リダイレクトがあります。

最後の2つのステップを説明します。 このSOの記事で