ディープリンクとは?
ディープリンクとは
ディープリンクとは?Universal LinksとApp Linksを解説 | We.Inc
ディープリンクは、リンクからアプリ内の特定の画面を開く仕組みです。カスタムURLスキーム、Universal Links、Android App Linksを比較し、2つの検証ファイルを作成できます。
ディープリンクとは、タップしたリンクでアプリのホーム画面ではなく、特定の商品など、アプリ内の特定の画面を開くことです。アプリはmyshop://のような独自のスキームを登録することも、iPhoneのUniversal LinksやAndroidのApp Linksを通じてWebサイトの通常のhttpsリンクを登録することもでき、後者にはサイト上のファイルが必要です。
ディープリンクの3つの種類
- カスタムURLスキーム
- myshop://product/42
- いいえ
- Universal Link(Apple)
- はい、apple-app-site-associationで証明
Webサイトとアプリの両方を運営しているなら、ディープリンクを使えば1つのアドレスで両方に対応できます。アプリを持っている人は適切な画面に移動し、それ以外の人にはWebページが表示されます。そのWeb側に必要なのは、ドメイン上の2つの小さなJSONファイルです。下のフォームに入力して両方のファイルを作成し、サーバーにコピーしましょう。
- どのパスをアプリで開くかを決めます。たとえば/product/*は開き、/account/*は開かない、などです。
- AppleのチームIDとバンドルID、Androidのパッケージ名と署名証明書のフィンガープリントを入力します。
- 生成された各ファイルを、Webサイトの/.well-known/フォルダーにコピーし、リダイレクトなしでhttps経由で配信します。
- 各アプリに対応する設定を追加します。iOSではAssociated Domainsのentitlement、Androidではandroid:autoVerify="true"付きのintent filterです。
- 受け取るリンクはすべて信頼できない入力として扱いましょう。AppleはURLスキームが攻撃経路になりうると警告しているので、パラメーターを確認し、不正な形式のものは無視しましょう。
- ディープリンクのすべてのアドレスに、機能するWebページを用意しておきましょう。アプリがない場合はブラウザーで開かれます。
- Play App Signingを使っている場合は、フィンガープリントをPlay Consoleから取得しましょう。ローカルのキーストアのものは通常一致しません。
- サインインやチェックアウトのコールバックなど、ブラウザーにとどまる必要があるパスは除外しましょう。
よくある質問
ディープリンクとUniversal Linksは同じものですか?
Universal Linksはディープリンクの一種です。通常のhttpsアドレスと、ドメインの所有を証明するWebサイト上のファイルを使うAppleの方式です。AppleはカスタムURLスキームも許容していますが、Universal Linksを強く推奨しています。
アプリがインストールされていない場合はどうなりますか?
Universal Linkの場合、AppleによるとシステムはそのアドレスをユーザーのデフォルトのWebブラウザーで開くため、Webサイト側で対応できます。Androidでも、検証済みのリンクは通常のhttpsアドレスなので、アプリがなければブラウザーで開かれます。カスタムスキームのリンクには、代わりに表示するWebページがありません。
apple-app-site-associationはどこに置きますか?
https://yourdomain/.well-known/apple-app-site-associationに、ファイル拡張子なし、有効な証明書あり、リダイレクトなしで置きます。iOS 14以降、端末はこのファイルをサーバーから直接ではなく、Appleが運営するコンテンツ配信ネットワーク経由で取得します。
App Linksの検証に対応しているAndroidのバージョンは?
Androidのドキュメントによると、App LinksはGoogleサービスを搭載した端末のAndroid 6以降で動作します。
Androidの検証をテストするには?
Android 12以降では、パッケージ名を付けてadb shell pm verify-app-links --re-verifyを実行し、数分待ってからadb shell pm get-app-linksを実行し、ドメインが検証済みと表示されるか確認します。
検証済みリンクが主流になった理由
- カスタムスキームはどのアプリでも登録できるため、2つのアプリが同じスキームを主張することがあり、Androidでは通常のディープリンクがアプリ選択ダイアログを表示させることがあります。検証済みリンクはこの両方の問題を解決します。アプリ名を記したファイルを公開できるのは、Webサイトの所有者だけだからです。
- 検証済みリンクは、すでにどこかにつながっている実在のWebアドレスなので、うまくいかなかった場合も自然に代替表示されます。
アプリのインストール前のリンク
- 通常のディープリンクはインストールを越えて引き継がれません。ストアが開き、ユーザーがインストールすると、アプリはホーム画面から始まります。元の行き先をインストール後まで引き継ぐことは遅延ディープリンクと呼ばれ、別のガイドで解説しています。
両方のファイルの配置ルール
各プラットフォームが確認する項目(2026年10月時点)
- httpsが必須か
- はい、有効な証明書が必要
- はい、アプリのリンクがhttpでも必要
- リダイレクトの可否
- 不可
- 不可(301も302も不可)
- ファイル名と形式
- ファイル拡張子なし
- application/jsonとして配信
- アプリ側の設定
- Associated Domains:applinks:yourdomain
- intent filterにandroid:autoVerify="true"
アプリ内でのリンクの処理
検証済みリンク用のAndroidのintent filter
開くべきactivityの中に記述します。hostは自分のドメインに置き換えてください。
Android 12以降での検証の確認
テスト端末を接続した状態で実行します。状態がverifiedなら、ファイルが受け入れられています。
検証ファイルジェネレーター
AppleのチームID
iOSのバンドルID
アプリで開くパス(1行に1つ)
ブラウザーにとどまるパス(1行に1つ)
Androidのパッケージ名
SHA-256署名証明書のフィンガープリント
そのフィンガープリントは、コロン区切りの16進数32組の形式になっていないようです。
/.well-known/apple-app-site-associationとして保存(拡張子なし)
コピー
コピーしました
入力内容をもとに、すべてブラウザー内で作成されます。どこにも送信されません。
無料で始める · クレジットカード不要
関連: ガイド|Webマーケティングと集客を学ぶ
製品
ご利用いただける方
機能
リソース
会社情報
サイトマップを見る