1つのHTTPS URLをWebとアプリで共有する
AppleはUniversal Linksについて、アプリがインストールされていれば対応コンテンツをアプリで開き、未インストールなら同じHTTPS URLをブラウザで開けると説明しています。
このため、myapp://... のようなcustom schemeだけを配布する場合と違い、同じURLをWeb側の到達先として維持できます。
AASAとAssociated Domains
Universal Linksを成立させるには、Web側で apple-app-site-association(AASA)を公開し、アプリ側でAssociated Domainsを設定して、どのドメイン/パスをアプリが扱うか関連付けます。
第三者のSNS URLを自分で文字列変換しただけでは、その第三者ドメインのUniversal Linkを自由に作ることはできません。
Safariでは同じドメインのリンクがWebに残ることがある
Appleは、SafariであるWebサイトを閲覧中に同じドメインのUniversal Linkをタップすると、ユーザーがWeb閲覧を続けたい意図を尊重してSafari内に留まる場合があると説明しています。別ドメインのUniversal Linkではアプリへ開く動作になる場合があります。
アドレスバーへ直接入力してもアプリは開かない
AppleのTN3155では、SafariのアドレスバーにURLを直接入力する操作はダイレクトナビゲーションとして扱われ、Universal Linkとしてアプリを開くテストにはならないと説明されています。
メモなどへリンクを貼り付けて長押しし、「アプリで開く」「ブラウザで開く」の選択肢を確認する方法や、Developer設定のAssociated Domains診断もAppleが案内しています。テスト全体はディープリンクのテスト方法に分けています。
AASA配信も確認する
TN3155では、AASAを対象ドメインの正しい場所から取得できること、対象subdomainとAssociated Domains設定が一致していることを確認するよう案内されています。AASA配信のHTTP redirectはサポートされないため、/.well-known/apple-app-site-association を直接取得できる構成が必要です。
Custom URL schemeとの違い
| 項目 | Universal Links | Custom scheme |
|---|---|---|
| URL形式 | HTTPS | 独自scheme |
| 関連付け | ドメインとアプリをAASA/Associated Domainsで検証 | scheme登録。ドメイン所有との検証はない |
| アプリ未導入 | 同じHTTPS URLをWebで開ける | 別途fallback設計が必要 |
| 主な確認点 | AASA、entitlement、対象path、Safari文脈 | scheme衝突、アプリ導入、ブラウザ/WebView処理 |
このサイトでの扱い
本サイトの製品は第三者サービス向けscheme/Intent候補の生成が中心で、ユーザー自身のiOSアプリへAASAとAssociated Domainsを自動設定する製品ではありません。Universal Linksの記事は、リンク方式を正しく判断するための基礎情報として提供します。
- AASAが正しいHTTPS場所から直接取得できるか。
- アプリ側Associated Domainsが正しいか。
- 対象path/componentsが目的URLを含むか。
- 同一ドメインSafari挙動を設定ミスと誤認していないか。
- アドレスバー直接入力でテストしていないか。
- 未インストール時のWebページが有効か。