Android アプリリンクは、Android 6 以降の特別なディープリンク機能です。検証済みのウェブサイト URL を使用して、ユーザーが選択ダイアログからアプリを選択しなくても、Android アプリで対応するコンテンツをすぐに開くことができます。これを実現するために、Android はウェブサイトでホストされている Digital Asset Links ステートメントを使用して、ウェブサイトとアプリ間の安全で検証済みの関連付けを確立します。関連付けが検証されると、Android はウェブサイトへのディープリンクをアプリに直接ルーティングして処理できるようになります。
Android 15 以降では、動的アプリリンクが導入され、アプリリンクがさらに強力になりました。新しい動的機能を使用すると、アプリの新しいバージョンをリリースすることなく、より詳細な制御でアプリのディープリンクの動作をその場で調整できます。
アプリリンクを使用するメリット:
- シームレスなユーザー エクスペリエンス - 検索結果、ウェブサイト、メッセージ、他のアプリから、アプリ内の特定のコンテンツにユーザーを直接誘導します。アプリリンクでは、ウェブサイトとアプリの同じコンテンツに単一の URL が使用されるため、アプリをインストールしていないユーザーは、エラー(404 など)が発生することなく、ウェブサイトにアクセスします。
- セキュリティの強化 - アプリリンクではドメイン所有権の確認が必要なため、他のアプリによるリンクの乗っ取りを防ぐことができます。
- 動的構成(Android 15 以降) - アプリのディープリンクの動作をその場で更新し、バニティ URL、季節限定キャンペーン、ユーザー固有のリンクなどの柔軟性を高め、更新を迅速に行えるようにします。
- エンゲージメント - 検索結果、広告、ウェブページ、メッセージなどのリンクを通じてユーザーのエンゲージメントを高めることができます。
アプリリンクをサポートする方法
- アプリ内の特定のコンテンツへのディープリンクを作成する: アプリ マニフェストで、ウェブサイトの URI のインテント フィルタを作成し、インテント由来のデータをもとにユーザーをアプリ内の適切なコンテンツへ誘導するよう、アプリを設定します。
- ディープリンクの確認を追加する: アプリリンクの確認をリクエストするようにアプリを構成します。次に、ウェブサイトでデジタル アセットリンク JSON ファイルを公開して、所有権を確認します。
または、Android Studio の Android アプリリンク アシスタントを使用して、Android アプリリンクの作成と検証に必要な各手順を確認することもできます。詳しくは、アプリリンクのデベロッパー ツールをご覧ください。
アプリリンクの利用状況
- Dynamic App Links - Google サービスがインストールされているデバイスで、Android 15(API レベル 35)以降。
- アプリリンク - Android 6(API レベル 23)以降、Google サービスがインストールされているデバイス。
- 通常の(ユーザー管理の)ディープリンク - すべてのデバイスのすべての Android バージョン。
アプリリンクの仕組み
アプリリンクは、独自のウェブサイトへのリンクの処理を完全に制御できる特別なディープリンクの方法です。他のディープリンク タイプで使用されているインテントベースのシステムを基盤としていますが、ウェブサイトのデジタル アセット リンク ファイルを使用してリンクの検証ステップを追加しています。
アプリリンクは、アプリデータと、ウェブサイトまたはドメインでホストする特別な assetlinks.json ファイルを使用して、アプリとウェブサイトの間に安全で信頼できる関連付けを作成します。assetlinks.json ファイルは、アプリの関連付けを検証するためのデジタル アセット リンク ステートメントを宣言します。
概念フローは次のとおりです。
- アプリのマニフェストで、
android:autoVerify="trueを含むインテント フィルタで URL を宣言し、ウェブサイトのホストを指定しています。 - アプリがインストールされると、Android システムはウェブサーバーの既知の場所から
assetlinks.jsonファイルを取得します。 - システムは、
assetlinks.jsonファイルが有効で、sha256_cert_fingerprintsがアプリの署名証明書と一致していることを確認します。 - ユーザーが一致するリンクをクリックすると、確認ダイアログが表示されることなく、システムによってユーザーがアプリに直接誘導されます。
アプリリンクは HTTP URL とウェブサイトの関連付けを利用するため、アプリをインストールしていないユーザーは、サイトのコンテンツに直接アクセスします。このように、アプリリンクは、ウェブ プロパティへのディープリンクをタップしたユーザーに、信頼性の高いシームレスなエクスペリエンスを提供します。
動的アプリリンク
Android 15 以降では、動的アプリリンクの導入により、アプリリンクがさらに強力になります。動的アプリリンクを使用すると、アプリの新しいバージョンを公開することなく、サーバーサイドの assetlinks.json ファイルでディープリンク ルールを更新できます。動的アプリリンクは、ディープリンク ルールを絞り込むためのデジタル アセットリンク フィールドをサポートしています。Google サービスがインストールされている Android デバイスでは、ファイルが定期的に更新され、新しいディープリンク ルールが動的に適用されます。アプリ アップデートは不要です。
以前は、このファイルは主に基本的な検証に使用されていました。現在では、パス、クエリ パラメータ、フラグメント、除外を指定できる強力な構成ツールとなり、動的で堅牢なディープリンク ソリューションを提供しています。
- 除外のサポート: アプリリンクの構成に一致する場合でも、アプリを開かないようにする URL の特定のパスまたはセクションを指定できます。
- クエリ パラメータのサポート: 新しいクエリ パラメータ機能を使用すると、URL に存在する場合にアプリが開かないようにする特定のパラメータを定義できます。これにより、動的除外、A/B テスト、特定のユーザー セグメントに対するアプリリンクの段階的な有効化など、さまざまな可能性が広がります。
- 動的な更新: サーバーでホストされている
assetlinks.jsonファイル内でアプリが直接処理する URL パスを指定することで、アプリを更新することなくアプリリンクの構成を更新できます。
また、URL パス、フラグメント、クエリ パラメータのマッチングなど、アプリを開く URL をきめ細かく制御することもできます。一致したものを除外して、アプリを開くことを許可しないようにすることもできます。詳しくは、動的ルールを構成するをご覧ください。
動的アプリリンクの概念フローは次のとおりです。
- アプリのマニフェストで、
android:autoVerify="trueを含むインテント フィルタで URL を宣言し、ウェブサイトのホストを指定しています。 - アプリがインストールされると、Android システムはウェブサーバーの既知の場所から
assetlinks.jsonファイルを取得します。 - システムは、ファイルが有効で、
sha256_cert_fingerprintsがアプリの署名証明書と一致していることを確認します。 - システムは、Digital Asset Links ステートメントの
dynamic_app_link_componentsフィールド内で定義したディープリンク ルールを解析し、マニフェストで宣言されたルールとマージします。- ユーザーが一致するリンクをクリックすると、確認ダイアログが表示されることなく、システムによってユーザーがアプリに直接移動します。
- システムは
assetlinks.jsonファイルを定期的に再取得して 最新のルールを取得するため、アプリをアップデートしなくてもリンクを更新できます。 定期的な再取得は、Google サービスがインストールされている Android 15(API レベル 35)以降を搭載したデバイスでサポートされています。
サンプル ユースケース
- 季節限定のマーケティング キャンペーン: 小売アプリは、
assetlinks.jsonファイルに「/promo/summer-sale」のルールを追加して、ユーザーを特定のセール画面に誘導できます。セールが終了したら、ユーザーがアプリを更新しなくてもルールを削除できます。 - パートナーのバニティ URL: インフルエンサーとパートナーシップを結んでいる場合は、「/partner/インフルエンサー名」のようなカスタム URL を作成して、そのルールを追加できます。その後、パートナーシップの変更に応じて、この URL を動的に追跡、更新、削除できます。
- URL パスの A/B テスト: デベロッパーは、特定の URL パスで新機能を公開し、
assetlinks.jsonファイルにそのルールを追加できます。これにより、一部のユーザーで機能をテストし、アプリを完全にデプロイすることなくルーティングを変更できます。 - 短期間のイベント: チケット販売アプリやイベントアプリで、特定のイベントの URL ルールを追加できます。イベントが終了したら、これらのルールをサーバーから削除できます。
アプリリンクの実装との互換性
Android 15 の動的アプリリンク拡張機能は、以前のバージョンの Android を搭載したデバイスのアプリリンクの既存の実装との完全な互換性を実現するように設計されています。アプリの古いバージョンでは、動的構成や構成機能を使用できません。マニフェストで宣言されたルールにフォールバックします。以前のバージョンの Android を使用しているユーザーの場合、アプリリンクは引き続きアプリを正しく開くか、ウェブに適切にフォールバックできます。ほとんどの場合、ユーザーベースの残りの部分のエクスペリエンスに影響を与えることなく、動的ルールを安全にデプロイできます。下位互換性のためにインテント フィルタを構成する方法について詳しくは、Android 14 以前の動的アプリリンクの下位互換性をご覧ください。
動的アプリリンクのフィルタリング ルールを設定する際の考慮事項
Android 15 以降で動的アプリリンクで使用するインテント フィルタを設定する場合は、サーバーサイドの assetlinks.json ファイルで定義されたパスレベルのルーティング ルールは、マニフェスト ファイルのインテント フィルタ ルールで静的に設定したスコープを拡張できないことに注意してください。
そのため、マニフェストのインテント フィルタで可能な限り広範なスコープを設定し、サーバーサイドの assetlinks.json ルールでさらに絞り込むことをおすすめします。この理想的な構成により、マニフェストで設定された広範なスコープ内に収まる新しいアプリリンクを動的に追加できるようになります。
ダイナミック ルールの信頼性の修正
2026 年 9 月に、Android 15(API レベル 35)以上を搭載した一部のデバイスで、assetlinks.json ファイルの動的ルールが断続的に適用されないという Google Play 開発者サービスの問題を修正しました。この問題が発生したとき、影響を受けたデバイスはアプリ マニフェストで宣言されたインテント フィルタのみを使用していたため、動的ルールで除外された URL でもアプリを開くことができました。アプリや assetlinks.json ファイルを変更する必要はありません。この修正により、ほとんどのデバイスで、宣言したとおりに動的ルールが適用されるようになります。
アプリリンクの実装を計画する
アプリリンクをサポートするには、アプリでの実装と、assetlinks.json ファイルを設定するためのサーバーサイドの作業が必要です。一般的な準備タスクと実装タスクを以下に示します。詳細については、他のリソースへのリンクをご覧ください。
- ディープリンクの計画 - 必要なディープリンク、使用する URL パターン、更新方法と更新時期、各 URL がアプリ内で解決するアクティビティまたはアクションを評価することから始めます。
- ダイナミック アプリリンクをサポート - 最新の Android デバイスのユーザーに最高のユーザー エクスペリエンスを提供します。Android 15 以降のユーザー向けに動的アプリリンクを活用しましょう。
- 動的フィルタ ルールを計画する - Dynamic App Links を使用する場合は、サーバーサイドのルールがアプリ マニフェストで静的に定義されたルールとどのように連携するかを計画します。assetlinks.json ファイルのフィルタルールは、アプリ マニフェストのフィルタのスコープを拡大できないことに注意してください。マニフェスト フィルタで可能な限り広範なスコープを宣言し、必要に応じてサーバーサイド ルールでそれらのルールを絞り込むように計画する必要があります。詳細については、動的ルールを構成するをご覧ください。
- リンクのインテント フィルタを作成してテストする - インテント フィルタでディープリンクを宣言し、URL パターン マッチングと受信インテント処理をテストします。動的アプリリンクをサポートするには、一部のきめ細かいパスをサーバーサイドの JSON ファイルに移動する必要がある場合があります。
- 受信したアプリリンク インテントからデータを読み取る - 受信したディープリンク インテントを適切に処理し、適切なアクティビティに解決します。アプリリンクの実装は、通常のディープリンクと同じです。インテントからデータを読み取るで説明しています。
- ウェブサイトの関連付けと動的ルールを構成する - アプリリンクをサポートするには、ウェブサイトまたはドメインでホストされているサーバーサイド ファイルを構成する必要があります。Android デバイスはこのファイルを取得して、アプリでのアプリリンクの実装を検証します。詳細
- アプリリンクの検証をテストする - Android システムがディープリンクを自動的に検証できることを確認します。デバッグとエンドツーエンド テストを使用して、構成が安全で、検証済みのすべての App Link パスで正しく機能していることを確認します。
- Android Studio や Google Play Console など、アプリリンクの設定に使用できるツールについて説明します。詳細はこちらをご覧ください。