Deep Linkとは、ウェブページではなく、モバイルアプリの特定の画面に直接移動するリンクです。Branch.io Mobile Deep Linking Report 2025によると、ディープリンクを設定したアプリは、インストール変換率が42%向上し、リテンションが28%向上します。iOSとAndroidでのディープリンクの仕組み、種類、利用可能なツールについて解説します。
重要ポイント
Deep Linkは、モバイルアプリ用のURLで、開くアプリだけでなく表示する画面も指定します。例えば、myapp://profile/42というリンクはmyappアプリを開き、ID 42のユーザープロフィールに直接移動します。ディープリンクがない場合、ユーザーはアプリのメイン画面にしかたどり着けません。
ディープリンクはマーケティングとユーザーエクスペリエンスにとって重要です。メールキャンペーン、プッシュ通知、広告キャンペーン、QRコードで使用されます。AppsFlyer(2025)によると、ディープリンクを使用したキャンペーンは、メイン画面への通常のリンクと比較してCTR(クリック率)が35%向上します。
IT Sectrでは、2019年からすべてのプロジェクトでディープリンクを実装しています。弊社の経験では、モバイルアプリでディープリンクを適切に設定すると、リダイレクト直後に関連性の高いコンテンツを提供することで、ユーザーのエンゲージメントが25~30%向上します。
iOSでは、ディープリンクを実装する方法として、URL Scheme(カスタムプロトコル)とUniversal Link(標準httpsリンク)の2つがあります。どちらの方法でもモバイルアプリのディープリンクを設定でき、それぞれに長所と短所があります。
URL Schemeはmyapp://path/to/screenのようなカスタムプロトコルです。iOS 3.0から利用可能で、サーバー設定は不要です。欠点として、アプリがインストールされていない場合、Safariでそのようなリンクを開くことができず、ユーザーにエラーが表示されます。また、プロトコルが一意ではないため、他のアプリがURL Schemeを横取りする可能性があります。
Universal Link(iOS 9+)は、ウェブページとディープリンクの両方として機能する通常のhttpsリンクです。アプリがインストールされている場合、iOSがリンクを横取りしてアプリを開きます。インストールされていない場合はウェブページが開きます。Universal Linksはより安全で(ドメインが検証済み)、警告も表示されません。
Universal Linkの設定には2つの手順が必要です:サーバーにapple-app-site-associationファイルを配置し、Xcodeでentitlementを追加します。AASAファイルには、サポートするパスとアプリIDに関するJSON情報が含まれています。iOSはアプリのインストール時にこのファイルをダウンロードし、リンクをたどる際に検証します。
重要:AASAファイルはリダイレクトなしでHTTPS経由でアクセス可能である必要があります。IT Sectrでは、すべての新規プロジェクトでURL SchemeではなくUniversal Linksの設定を推奨しています。Universal Linksはより安全で信頼性が高く、優れたユーザーエクスペリエンスを提供します。
App Links(Android 6.0+)は、モバイルアプリにおけるAndroid版のUniversal Linksです。アプリが処理できるhttps URLを指定し、サーバー上のデジタルファイルで検証します。Androidはユーザーの操作なしでドメインとアプリの関連付けを確認します。
App Linksを実装するには、AndroidManifest.xmlにautoVerify="true"のIntent Filterを追加し、サーバーにassetlinks.jsonファイルを配置し、アプリに署名する必要があります。その後、Androidは指定されたドメインからのすべてのリンクを自動的にアプリに転送します(インストールされている場合)。
Intent Filterは、Activityが処理できるインテントの種類をシステムに伝えるAndroidManifest.xml内の宣言です。ディープリンクの場合、Intent Filterにはdata要素(スキーム(http/https)、ホスト(ドメイン)、パス)が含まれます。
<activity android:name=".MainActivity">
<intent-filter android:autoVerify="true">
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="https"
android:host="example.com"
android:pathPrefix="/product/" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="myapp"
android:host="product" />
</intent-filter>
</activity>
最初のIntent FilterはApp Links(assetlinks.jsonで検証されたhttpsリンク)を処理します。2つ目はURL Scheme(myapp://)を処理します。重要:autoVerify="true"は、アプリのインストール時に関連付けを検証するようAndroidに指示します。検証に失敗した場合、システムはアプリ選択ダイアログを表示します。
| パラメータ | iOS | Android |
|---|---|---|
| ディープリンクの種類 | Universal Link(iOS 9+)、URL Scheme | App Links(Android 6+)、Intent Filter |
| 検証ファイル | apple-app-site-association(JSON) | assetlinks.json(JSON) |
| HTTPS必須 | はい | はい |
| アプリがない場合 | ウェブページが開く | ウェブページが開く |
| 他のアプリが横取り可能 | いいえ(ドメインは一意) | いいえ(ドメインは検証済み) |
| URL Schemeの競合 | はい(どのアプリも同じschemeを登録可能) | はい |
表1. iOSとAndroidのディープリンキングアプローチの比較。Universal LinksとApp Linksが現代の標準です。URL SchemeとautoVerifyなしのIntent Filtersはレガシーですが、依然として使用されている方法です。
Firebase Dynamic Links(Googleサービス)とBranch.ioは、ディープリンクを管理するプラットフォームで、アプリがインストールされていない場合の問題を解決します。これらはスマートリンクを作成し、App Store / Google Playにリダイレクトしてインストールを促し、インストール後は目的の画面に遷移します。
Firebase Dynamic Linksは無料サービスです(2025年現在)。https://yourdomain.page.link/xxxのようなリンクを作成でき、両方のプラットフォームでディープリンクとして機能します。Firebase Dynamic Linksはディファードディープリンキングとアトリビューションをサポートしています。
Branch.ioは、より広範な機能を備えた商用プラットフォームです:ソーシャルメディアリンク、QRコード、分析、アトリビューション。Branch.ioは大手アプリ(Pinterest、Reddit)で使用され、主要なMMP(AppsFlyer、Adjust)と統合されています。
Deferred Deep Linkは、インストール後に作動するモバイルアプリ用のディープリンクです。ユーザーがアプリをインストールする前にリンクをクリックし、アプリをインストールして、初回起動後に自動的に目的の画面に移動します。これは広告キャンペーンにとって重要な仕組みです:ユーザーが商品広告をクリック→アプリをインストール→その商品をすぐに確認できます。
アトリビューションとは、インストール元を特定することです。どの広告キャンペーンがユーザーを獲得したか?どのチャネルか?アトリビューションプラットフォーム(AppsFlyer、Adjust、Branch)は、ディープリンクのクリックを識別し、インストールと関連付けます。AppsFlyer(2025)によると、ディファードディープリンクは通常のインストールと比較して購入変換率を30%向上させます。
IT Sectrでは、Eコマースプロジェクト向けにディファードディープリンクを設定しています。例えば、モバイルショッピングアプリで、ユーザーが特定の商品の広告を見てリンクをクリックし、アプリをダウンロードしてその商品ページに直接移動します。このシナリオでの購入変換率は、標準的なインストールと比較して2倍高くなります。
よくある質問
Universal Linkは、標準のhttpsプロトコルを使用するiOS向けDeep Linkの一種です。Deep Linkはアプリに移動するあらゆるリンクを指す一般用語です。Universal Linkは、通常のURL Schemeよりも安全で信頼性の高い特定のケースです。
アプリがインストールされるまでユーザーの意図(どの画面を開くか)を記憶するリンクです。インストール後、アプリはリンクパラメータを受信し、目的の画面を開きます。これがないと、ユーザーはインストール後にメイン画面に移動してしまいます。
iOSでは、xcrun simctl openurl booted "https://your.link"コマンドを使用します。Androidでは、adb shell am start -W -a android.intent.action.VIEW -d "https://your.link"を使用します。テストにはBranch.ioなどのサービスも利用できます。
いいえ、アプリが既にインストールされている場合は、Universal LinksとApp Linksで十分です。Firebase Dynamic LinksやBranch.ioは、「インストール前のリンク」シナリオ(ディファードディープリンキング)にのみ必要です。ほとんどのアプリでは、基本的なディープリンクで十分です。
まとめ
ターンキー方式のモバイルアプリケーションを開発します
IT Sectrは2017年からスタートアップや企業向けにiOS・Androidアプリケーションを開発しています。私たちがご相談に乗り、最適なソリューションをご提案します。