インターネットを閲覧するたびに、URL スキームを操作します。 https:// で始まる Web アドレスを入力するか、mailto: リンクを介して電子メールを作成するか、スマートフォンで魔法のように WhatsApp を起動するボタンをタップすると、URL スキームが舞台裏で実行されます。 しかし、多くのデジタル マーケティング担当者、Web デザイナー、モバイル クリエーターにとって、これらのプロトコルの背後にある仕組みは依然として謎に包まれています。 URL スキームとは何かを理解することは、モバイルディープリンクとユーザーエクスペリエンスデザインを習得するための基礎です。
URL スキームの核心は、デバイスのオペレーティング システムの操作説明書です。 これは、特定のアドレスを開く役割を担うプロトコルまたはアプリケーションを識別します。 標準の Web プロトコルはブラウザにリモート Web サーバーからファイルを取得するように指示しますが、カスタム モバイル スキームは Apple iOS または Google Android に携帯電話にインストールされた専用のネイティブ アプリケーションを起動するように指示します。 この包括的な技術ガイドでは、スキームの構文を分析し、人気のあるソーシャル アプリの実例を確認し、最新のスマート ルーティングがスキームとユニバーサル リンクをどのように組み合わせるかについて説明します。
モバイル オペレーティング システムがプロトコル ハンドシェイクをどのように解釈するかを理解することで、ブラウザ エラーを引き起こすことなくユーザーをネイティブ アプリに誘導する復元力のあるリンクを構築できます。
URL スキームの解剖学的内訳
すべての URI (Uniform Resource Identifier) は、インターネット標準 (RFC 3986) によって定義された標準化された構造に従います。 完全なアドレスは、次のような個別のコンポーネントで構成されます。
scheme:[//authority]path[?query][#fragment]
実際の例を詳しく見てみましょう: spotify://album/4yP0hdKOZPNshxUOjY0cZj?si=abc123
- スキーム (
spotify): コロンの前のプロトコル識別子。 これはオペレーティング システムに、「このペイロードを、'spotify' という名前で登録されているアプリケーションに渡します」と指示します。 - 権限 / ホスト (
album): アプリケーションが検索するカテゴリまたはリソース タイプを定義します。 - パス (
/4yP0hdKOZPNshxUOjY0cZj): 特定のアルバムを表す正確な暗号識別子。 - クエリ パラメータ (
?si=abc123): 追跡タグや共有ソース識別子などの追加のメタデータ。
モバイル オペレーティング システムは、この文字列を検出すると、内部システム レジストリを参照して、インストールされているアプリが spotify プロトコルを要求しているかを特定します。
標準 Web スキームとカスタム アプリ スキームの比較
URL スキームは通常、次の 2 つに大きく分類されます。
| スキームカテゴリ | プロトコルの例 | オペレーティングシステムハンドラー | デフォルトの動作 |
|---|---|---|---|
| 標準ウェブプロトコル | http:, https: |
デフォルトウェブブラウザ(Safari、Chrome) | インターネットプロトコルを介してウェブアセットを取得 |
| システム電話プロトコル | mailto:, tel:, sms: |
コアオペレーティングシステムサービス | 電話ダイヤラー、メール作成、またはSMSアプリを起動 |
| カスタムアプリスキーム | tg:, fb:, instagram: |
登録済みのサードパーティ製アプリ | インストールされているネイティブ アプリケーション ウィンドウを起動します |
標準スキームは Web に接続されているすべてのコンピューターにわたってグローバルに動作しますが、カスタム アプリ スキームは、対応するアプリケーションが特定のクライアント デバイスにインストールされている場合にのみ機能します。 スキームの詳細な比較については、包括的なユニバーサル リンクとカスタム スキームのガイドをご覧ください。
主要なアプリでよく使われる URL スキームの例
ほとんどの主要なソーシャル メディア プラットフォームとモバイル アプリケーションは、深いナビゲーションのためのカスタム URL スキームをサポートしています。 モバイル エコシステム全体で使用される一般的な例を次に示します。
- Telegram:
tg://resolve?domain=usernameは Telegram を起動し、ダイレクト チャット ウィンドウまたはチャネルを開きます。 - YouTube:
vnd.youtube://watch?v=VIDEO_IDは、YouTube アプリにビデオの再生を開始するよう命令します。 - Instagram:
instagram://user?username=profileは、指定されたクリエイター プロフィールを開きます。 - Twitter (X):
twitter://user?screen_name=handleは、ユーザーのタイムラインに直接移動します。 - Waze:
waze://?q=Addressは、目的地に向けて Waze のターンバイターン GPS ナビゲーションを起動します。
完全な ディープ リンク URL スキーム ディレクトリ で、検証済みプロトコルの広範なライブラリを参照できます。
YouTube の vnd.youtube: などの一部の URL スキームは、IANA 登録標準で定義されているベンダー固有のプレフィックスを利用していることに注意してください。 これらのベンダーのサブ名前空間は、同様のメディア タイプ用のユーティリティを開発している異なるソフトウェア ベンダー間の名前の衝突を防ぎ、オペレーティング システムが正しいバイナリを実行できるようにします。
エンジニアリングの観点から見ると、開発者はアプリケーション マニフェスト ファイル内にカスタム URL スキームを登録します。 Apple iOS では、開発者はアプリケーションの Info.plist ファイルの CFBundleURLTypes 辞書キーの下でサポートされるスキームを宣言します。 Android では、開発者は AndroidManifest.xml 内でカスタム スキーム属性を含む <intent-filter> タグを宣言します。 デバイスにインストールされると、オペレーティング システムのパッケージ マネージャーがこれらの宣言を読み取り、プロトコルをアプリの実行可能ファイルにバインドします。
モバイル ソフトウェア エンジニアは、コマンドライン開発者ツールを使用してローカルで URL スキームを頻繁にテストします。 Xcode を実行している Mac 上で、エンジニアは xcrun simctl openurl booted "spotify://track/id" を実行して、iOS シミュレーターが予期したビュー コントローラーをトリガーすることを確認します。 Android では、エンジニアは Android Debug Bridge (ADB) を使用してインテント コマンドを起動します: adb shell am start -a android.intent.action.VIEW -d "tg://resolve?domain=handle"。 これらの開発者のワークフローを理解すると、テクニカル マーケティング担当者が消費者向けデバイスで特定のディープ リンクが適切に実行できない原因をトラブルシューティングするのに役立ちます。
スキームに固有の制限とセキュリティ上の欠陥
カスタム URL スキームには、その有用性にもかかわらず、次の 2 つの基本的なエンジニアリング上の制限があり、Apple と Google が新しい代替スキームを開発することになりました。
1. アプリが見つからない障害のトラップ:
Telegram がインストールされていないデバイス上でモバイル Web ブラウザが tg:// などのカスタム スキームを実行しようとすると、オペレーティング システムはアドレスを解決できません。 Safari などの標準ブラウザでは、ユーザーを App Store にスムーズにリダイレクトする代わりに、次のようなイライラするエラー ダイアログが表示されます。「アドレスが無効であるため、Safari はページを開けません。」。この技術的な行き止まりは、ユーザーの信頼を破壊します。
2. スキーム検証の欠如 (スキームハイジャック):
従来、モバイル オペレーティング システムはカスタム スキーム名の所有権を検証していませんでした。 悪意のあるアプリがスキーム paypal:// または bank:// を登録した場合、正規のバンキング アプリ向けの機密ディープリンク パラメーターを傍受する可能性があります。 このセキュリティリスクにより、Apple は Universal Links を導入し、Google は Android App Links を導入しました。
DSLink を使用してシームレスなスマート リンクを作成する
アプリ内ブラウザの障壁を回避し、モバイル ユーザーをネイティブ アプリに直接誘導し、インテリジェントなディープ リンクでコンバージョンを最適化します。
無料で始める — クレジットカード不要スマートディープリンクがスキームとユニバーサルリンクをどのように組み合わせるか
アプリの即時起動のメリットを享受しながらスキームの破損エラーを排除するために、開発者はインテリジェントな多層ディープリンク ルーティングを利用しています。
DSLink でホストされるスマート ディープ リンクは、自動トラフィック コントローラーとして機能します。
- デバイス検査: クリックすると、DSLink はユーザーのオペレーティング システム、ブラウザ エンジン、デバイスのフォーム ファクターをミリ秒単位で評価します。
- プライマリ プロトコル ハンドシェイク: 最新の iOS および Android デバイスでは、検証済みのユニバーサル リンクまたはアプリ リンクの実行が試行されます。 ユニバーサル リンクの仕組みの詳細については、ユニバーサル リンクとはに関するガイドをご覧ください。
- フォールバック スキームの実行: ユーザーが制限の厳しいアプリ内ブラウザ (Instagram や TikTok など) 内で閲覧している場合、カスタム URL スキームを実行してネイティブ アプリを強制的に開きます。
- グレースフル Web フォールバック: ターゲット アプリがインストールされていない場合、リンクは、エラー ダイアログを表示せずに、訪問者を応答性の高い Web バージョンまたは App Store の公式ダウンロード ページに誘導します。
標準の HTTP アドレス、検証済みのユニバーサル リンク、カスタム URL スキームを統合スマート ブリッジに統合することで、すべてのユーザーが簡単に目的地に到達できることが保証されます。
よくある質問
URL スキームの例は何ですか?
一般的な例には、安全な Web サイトの場合は https://、電子メール クライアントの場合は mailto:、電話の場合は tel:、Spotify モバイル アプリケーションの起動の場合は Spotify: が含まれます。
アプリがインストールされていない場合にカスタム URL スキームをクリックするとどうなりますか?
標準のモバイル Web ブラウザーでは、未登録のカスタム スキームをクリックすると、ブラウザーは「アドレスが無効であるため、Safari はページを開けません」という不快なエラー モーダルをスローします。
2 つのアプリで同じカスタム URL スキームを登録できますか?
はい。 古いオペレーティング システム アーキテクチャでは、複数のアプリが同じスキーム (fb:// など) を登録する可能性があり、潜在的なセキュリティ脆弱性やリンク ハイジャックのリスクが生じます。
カスタム URL スキームは廃止されますか?
いいえ、Apple と Google は主要な Web からアプリへのルーティングにユニバーサル リンクとアプリ リンクを推奨していますが、内部のアプリからアプリへのハンドオフやフォールバック ルーティングにはカスタム スキームが依然として重要です。