ディープリンク. アプリを開く。優雅にフォールバック。
カスタムドメインからUniversal LinksおよびApp Linksのマニフェストを自動配信。iOSやAndroidではタップ時にアプリを直接起動し、デスクトップではブラウザへフォールバックします。
- ご自身のドメインから配信される Universal Links(iOS)と App Links(Android)
- ディファード ディープリンク - アプリのインストールを越えてコンテキストが生き残ります
- 優雅なフォールバックを備えたスマートなプラットフォーム検出
- SDK 不要 - 標準的な OS の仕組みで動作します
Universal Links と App Links
マニフェストファイル、ご自身のドメインから自動配信
iOS Universal Links には apple-app-site-association ファイルが必要です。Android App Links には assetlinks.jsonが必要です。Elido はあなたのカスタムドメインから両方を自動的に生成・配信します - 別途ホスティングや手動でのファイル管理は不要です。
- iOS Universal LinksBundle ID + Team ID → AASA が /.well-known/ で自動配信されます
- Android App Linksパッケージ名 + SHA-256 フィンガープリント → assetlinks.json、HTTPS 強制
- スマートリンクのフォールバックアプリ未インストール → ルールベースのルーティングで App Store / Play Store へ
- UTM パススルーUTM パラメーターがストア URL に保持されます - アトリビューションは壊れません
- アプリに SDK 不要OS レベルの傍受のみ;intent-filter と continueUserActivity
{ "applinks": { "apps": [], "details": [ { "appID": "TEAMID.com.yours.app", "paths": [ "/product/*", "/referral/*", "/invite/*" ] } ] } }
[{ "relation": [ "delegate_permission/ common.handle_all_urls" ], "target": { "namespace": "android_app", "package_name": "com.yourcompany.app", "sha256_cert_fingerprints": [ "AB:12:CD:34:EF:56:..." ] } }]
あなたのカスタムドメインから自動配信されます。 ドメイン設定で bundle ID + Team ID(iOS)またはパッケージ名 + SHA-256 フィンガープリント(Android)を構成してください - Elido が両方のファイルを生成してホストします。
ディファード ディープリンク
インストールを越えて生き残るコンテキスト
アプリがインストールされていない場合、ユーザーはストアに行き、インストールしてアプリを開きます。ディファード ディープリンクはその過程を通じて元のディープリンクのコンテキストを渡すので、アプリは初回起動後に正確に適切な画面へユーザーを誘導できます。
- 01
リンクをクリック
ユーザーが Elido の短縮リンクをタップ - メール、ソーシャル、QR から。
go.yourcompany.com/p/12345 - 02
アプリなし → ストア
アプリ未インストール。OS が AASA / assetlinks のチェックで検出します。App Store または Play Store にフォールバック。
iOS → App Store · Android → Play Store - 03
アプリをインストール
ユーザーがストアからインストール。インストールリファラーがクリックコンテキストをクエリパラメーターとして運びます。
click_id + UTM がリファラー URL に保持されます - 04
アプリを開く
アプリが初めて開きます。MMP がインストールリファラーを読み取り、click_id をインストールイベントにマッピングします。
Appsflyer / Adjust / Branch が拾います - 05
正確なページに着地
アプリは元々リンクされていた画面 - product/12345 - に、ユーザーが既にアプリを持っていたかのようにルーティングします。
product/12345 - インストールを通じてコンテキストが保持されました
パラメーター click_id と元の短縮リンクからの UTM パラメーターは、ストア URL にクエリパラメーターとして渡されます。インストールリファラーをキャプチャするモバイル測定プラットフォーム(MMP)- Appsflyer、Adjust、Branch - はインストールを元のクリックにマッチングできます。完全なディファード ディープリンク(インストールを通じてアプリ内コンテキストを渡す)にはアプリ内に MMP SDK が必要です;Elido はリンクレイヤーをカバーします。
スマートなプラットフォーム検出
1 つのリンク。3 つのリダイレクト経路。
エッジはリダイレクトレイヤーで User-Agent とプラットフォーム信号を読み取ります - JS が実行される前です。iPhone は Universal Links、Android は App Links、デスクトップはあなたのウェブフォールバックを取得します。JavaScript リダイレクトの遅延なし;クライアント側のプラットフォーム検出なし。
- エッジでの UA パース、サブミリ秒
- iOS → OS による Universal Link の傍受
- Android → intent-filter 経由の App Link 傍受
- デスクトップ → ウェブ URL、ストア経由の遠回りなし
- アプリ内ブラウザを検出してシステムブラウザにリダイレクト
- スマートリンクのルールと組み合わせ可能 - ジオ + デバイス + ディープリンク
できること
- Apple App Site Association (AASA)
- Android Asset Links
- ストアフォールバック用のスマートリンクルール
- adbおよびxcrunによる動作確認済み
ディープリンクの仕組みと、注意すべき落とし穴
Universal LinksとApp LinksはOSレベルの仕組みです。セットアップは簡単ですが、エッジケースの対応にはコツが要ります。ここではその全容を解説します。
カスタムドメインからapple-app-site-associationを自動配信
Universal Linksを利用するには、カスタムドメインの /.well-known/apple-app-site-association にAASAファイルを配置する必要があります。iOSはアプリのインストール時にこのファイルをダウンロードし、ドメインとアプリのBundle IDおよびTeam IDを紐付けます。設定が正しければ、Safari、メール、SNSなどでリンクをタップした際に、ブラウザを経由せずアプリを直接起動できます。Elidoは設定に基づきAASAファイルを自動生成し、カスタムドメインから配信します。別途ホスティングを用意する必要はありません。iOSはAASAファイルをキャッシュし、定期的(通常24〜48時間)またはアプリの再インストール時に更新します。各リリースごとにAppleのAASAバリデーターでテスト済みです。
assetlinks.jsonを自動配信 - 署名キーのSHA-256フィンガープリントに対応
Android App Linksには、ドメイン上の /.well-known/assetlinks.json が必要です。このファイルがドメインとアプリのパッケージ名、および署名証明書のSHA-256フィンガープリントを紐付けます。Androidはインストール時および定期的にこの検証を行います。Elidoは設定に基づき、このファイルをカスタムドメインから自動配信します。Androidの検証にはHTTPSが必須ですが、ElidoのTLS設定によりこれも自動で解決されます。よくある失敗として、デバッグ版とリリース版で署名キーが異なるケースがあります。テスト用にデバッグ版のフィンガープリントもElidoの設定に追加することをお勧めします。各リリースで adb shell pm get-app-links による検証を行っています。
インストール済みならアプリへ、未インストールならストアへ。デスクトップはWebへ。UTMは常に維持。
フォールバックチェーンは、リンクごとまたはドメインごとに設定可能です。アプリがインストールされておりドメインが検証済みならアプリが起動し、そうでなければブラウザで開きます。スマートリンクルールを使用すれば、iOSならApp Store、AndroidならPlay Store、デスクトップならWebサイトへ飛ばすよう制御できます。元の短縮URLに含まれるUTMパラメータはフォールバック先へも引き継がれるため、アトリビューションを損なうことはありません。なお、インストール後に特定の画面を開く「ディファードディープリンク」にはアプリ内SDKが必要であり、Elido単体では提供していません。高度な要件にはAppsflyer、Adjust、Branchなどの併用が必要です。
インストール後のリターゲティング:アトリビューション用にクリックIDを渡す
ディープリンクのリダイレクト時、Elidoは click_id をクエリパラメータとしてフォールバックURLに渡します。ユーザーがストア経由でインストールした場合、参照元URLに click_id が含まれますが、アプリ起動時にこれを取得するにはMMP(モバイル計測プラットフォーム)のSDKが必要です。Elidoは、AppsflyerやAdjustなどのMMPがインストール参照元をキャプチャできるよう、click_id とUTMパラメータをストアURLに渡す役割を担います。MMPを使用していない場合、ストア遷移後の click_id は原則としてアプリ内には引き継がれません。
Firebase Dynamic Linksからの移行(2025年終了対応)
2025年に終了したFirebase Dynamic Linksのコア機能はElidoで代替可能です。「一つの短縮URLで、インストール済みならアプリを、未インストールならストアを開く」というパターンを、カスタムドメインで実現できます。Elidoのドメイン設定でAASAとassetlinks.jsonを構成し、スマートリンクルールでフォールバック先を指定してください。Firebase SDKに依存していた「ディファードディープリンク」が必要な場合は、AppsflyerやAdjust、BranchなどのMMPをElidoと組み合わせて使用することをお勧めします。単なるストアへのリダイレクトとWebフォールバックであれば、Elidoだけで十分に代替可能です。
Elidoのディープリンクを活用しているモバイルチーム
現在はプレースホルダーです。事例公開に合わせて実在の企業名に更新されます。
“Firebase Dynamic Linksの終了発表を受けてすぐにElidoへ移行しました。AASAとassetlinks.jsonのセットアップは半日で完了。スマートリンクによるフォールバック機能で、以前はFirebase SDKで行っていたストアへのルーティングを統合できました。”
“ディープリンクの分析データから、共有リンクの35%がデスクトップでクリックされていることが判明しました。以前はWebフォールバックがなかったのですが、Elidoで設定したことで、デスクトップユーザーも離脱させることなくコンバージョンへ繋げられるようになりました。”
“紹介プログラムにElidoのディープリンクを使用しています。App Store URLへのUTM引き継ぎ機能により、MMP側でインストール参照元を正確に特定できています。カスタムSDKを自作することなく、アトリビューションを維持できて助かっています。”
Elidoディープリンク vs Branch.io vs Adjust vs Firebase Dynamic Links (終了)
BranchやAdjustは高度なアトリビューション計測(MMP)を主目的としています。Elidoは、URL短縮管理の一環としてディープリンクを導入したい場合に最適なツールです。
| Feature | Elido | Branch.io | Adjust |
|---|---|---|---|
| Universal Links (iOS) | カスタムドメインからのAASA自動配信 | 大規模向けの管理機能 | なし(MMP機能のみ、ホスティング非対応) |
| App Links (Android) | カスタムドメインからのassetlinks.json自動配信 | フルマネージド | なし |
| アプリ内SDK必須 | いいえ(OSレベルの制御) | はい(Branch SDK) | はい(Adjust SDK) |
| ディファードディープリンク | いいえ(アプリ内SDKが必要) | はい(コア機能) | はい(Adjust SDK経由) |
| モバイルアトリビューション (MMP) | click_idの引き継ぎ(MMP連携は手動) | ネイティブ連携(Appsflyer、Kochava等) | プラットフォーム自体がMMP |
| ストアへのUTM引き継ぎ | はい(フォールバックURL経由) | はい(計測コンテキストを含む) | はい |
| クリック分析 | 分析ストアによる地域、デバイス、リンク別分析 | 高度なモバイルアトリビューション分析 | インストールおよびイベント計測データ |
| Firebase代替 | 基本機能は完全に代替可能(SDK機能除く) | SDK機能を含めた完全な代替 | 一部代替(MMP側面のみ) |
ディープリンクに関するよくある質問
Elidoのディープリンクを使うのにBranch SDKや他のSDKをインストールする必要はありますか?
いいえ。ElidoのディープリンクはiOS Universal LinksとAndroid App LinksというOSレベルの標準機能を使用します。アプリ側でURLを処理する標準的な実装(iOSの scene:openURLContexts やAndroidの intent-filter など)があれば、サードパーティのSDKを導入することなく動作します。
AASAファイルのセットアップ手順を教えてください。
Elidoのドメイン設定画面から、iOSアプリのBundle IDとApple Team ID(10桁の英数字)を入力するだけです。Elidoが自動的にJSONを生成し、/.well-known/apple-app-site-association パスで配信を開始します。設定後、AppleのAASAバリデーターなどで正しく認識されるか確認してください。
一つのドメインで複数のアプリを扱えますか?
はい。AASAファイルおよびassetlinks.jsonは複数のアプリ登録をサポートしています。ドメイン設定で複数のアプリIDを追加すれば、Elidoがそれらを統合したマニフェストファイルを自動生成します。
Firebase Dynamic Linksが終了しましたが、どのように移行すればよいですか?
既存の page.link URLを、Elidoで作成したカスタムドメインの短縮URLに置き換えてください。Elidoの設定画面でAASAとassetlinks.jsonを構成し、スマートリンクルール(iOSならApp Store、AndroidならPlay Store)を設定することで、同等のユーザー体験を維持できます。
アプリ公開前にUniversal Linksをテストする方法はありますか?
iOSシミュレータでは xcrun simctl openurl booted 'URL' コマンドでテストできます。実機の場合は、メモアプリやSafariにURLを貼り付けて長押しし、「アプリで開く」が表示されるか確認してください。Apple公式の App Association File Validator も、Elidoが配信するファイルの正当性チェックに利用可能です。
「ディファードディープリンク」とは何ですか?なぜElido単体ではできないのですか?
アプリが未インストールの状態でリンクをクリックし、ストア経由でインストールした後に特定の画面を自動で開く仕組みです。これにはアプリ内でのマッチングを行うSDK(BranchやAppsflyerなど)が必要です。Elidoはプライバシーとシンプルさを重視し、アプリ内SDKを提供していないため、この「インストールを跨いだコンテキスト保持」には対応していません。
Elidoの共有ドメイン (s.elido.me) でディープリンクは使えますか?
いいえ。Universal LinksおよびApp Linksは、所有権を証明できる独自ドメインが必要です。*.elido.me の所有権を各ユーザーがOSに対して主張することはできないため、独自ドメインの設定が必須となります。
ブラウザによってディープリンクがブロックされることはありますか?
一部のアプリ内ブラウザ(InstagramやTikTokなど)は、セキュリティ上の理由でOSへの遷移を制限することがあります。その場合はフォールバックURLが表示されます。一般的な対策として、フォールバック先のページに「ブラウザで開く」や「アプリで開く」ボタンを配置し、ユーザーに手動操作を促す設計が推奨されます。