Apple App Site Association(AASA)は、iOSアプリ開発者にとって重要なツールです。アプリをWebサイトに安全に接続し、アプリがユニバーサルリンクや共有Web資格情報などの機能を使用できるようにします。ユーザーがアプリとWebサイトの間をシームレスに移動する今日のデジタル時代では、スムーズで安全なエクスペリエンスを提供することが重要です。 AASAは、この目標を達成する上で重要な役割を果たしています。
このガイドでは、AASAを調査し、そのメカニズム、利点、および独自のAASAファイルを作成および検証する段階的なプロセスを説明します。あなたが経験豊富な開発者であろうと、ちょうど始めたばかりであろうと、AASAを理解することは、ユーザーのエンゲージメントを改善し、アプリとウェブサイトの間の安全な接続を確保するために不可欠です。 AASAファイルは、Webサーバーに座ってアプリをインストールするときにユーザーのデバイスでチェックされることにより、アプリがWebサイトとコラボレーションするのに役立ちます。
すべてが一致している場合、アプリはWebサイトでうまく機能する可能性があります。 AASAファイルのセットアップは簡単です。開発者は、必要な情報を含むJSONファイルを作成し、Appleのサーバーがそれを見つけることができるように、ウェブサイトの正しい場所に配置します。これにより、アプリとWebサイトがスムーズに連携することができます。
Appleからの詳細については、このページを参照してください。https://developer.apple.com/documentation/xcode/supporting-associated-domains
アプリとウェブサイトの統合を合理化します
Apple App Site Associationとは何ですか?
Apple App Site Association(AASA)は、アプリとWebサイトの間に安全な接続を確立するファイルです。この接続により、ユニバーサルリンク、共有Web資格情報、ハンドオフ、アプリクリップなどの機能が可能になります。
AASAはどのように機能しますか?
ユーザーがユニバーサルリンクをタップすると、iOSはWebサイトのAASAファイルをチェックして、アプリがリンクを処理できるかどうかを確認します。その場合、アプリは直接開きます。それ以外の場合、リンクはSafariで開きます。
AASAを使用することの利点
- シームレスなユーザーエクスペリエンス:ユーザーは、中断することなくアプリとWebサイトの間を移動できます。
- セキュリティの強化:AASAは、アプリのみがWebサイトからリンクを開くことができることを保証し、不正アクセスを防ぎます。
- 発見可能性の向上:AASAは、アプリコンテンツをWeb検索やソーシャルメディアを介して見つけやすくします。
AASAファイルを作成します
- ファイル「Apple-App-Site-Association」(拡張機能なし)に名前を付けます。
- JSON形式を使用して、ファイルのコンテンツを構成します。
- アプリID、アプリが処理するパス、およびサポートするその他のサービスの詳細を含めます。
- ファイルをWebサイトのルートに「.well-known」ディレクトリに配置します。
AASAファイル構造
| 鍵 | 説明 |
|---|---|
| Applinks | アプリに関連付けられたアプリIDとパスに関する情報が含まれています。 |
| アプリ | ユニバーサルリンクが機能するために必要な空の配列。 |
| 詳細 | それぞれが特定のアプリIDとそれに関連するパスの情報を含む一連の辞書。 |
| appid | アプリのチームIDまたはアプリIDプレフィックス、その後にバンドルIDが続きます。 |
| パス | アプリが処理するウェブサイトのどの部分を指定する文字列の配列。 |
希望ファイルの例
{
"applinks": {
"apps": [],
"details": [
{
"appID": "9JA89QQLNQ.com.example.app",
"paths": [ "/wwdc/news/", "/videos/wwdc/2015/*" ]
}
]
}
}AASAファイルの検証
を使用しますApp Search API Validation ToolAppleが提供して、AASAファイルが正しくフォーマットされ、アクセス可能であることを確認します。
キーテイクアウト
- Apple App Site Associationは、アプリとWebサイトをリンクします
- このファイルは、ユニバーサルリンクなどの機能を有効にします
- 適切なセットアップにより、アプリとWeb統合が改善されます
Apple App Site Association(AASA)は、iOSアプリをWebリンクを直接開くようにします。このセクションでは、AASAファイル、サーバーのセットアップ、Xcode構成の作成について説明します。
AASAファイルの理解
AASAファイルは、WebサイトをiOSアプリにリンクするJSONファイルです。ファイル拡張機能なしで「Apple-App-Site-Association」と名付けられなければなりません。ウェブサイトのルートまたは「.well-known」フォルダーに配置します。
ファイルには、アプリIDと開くことができるURLがリストされています。これが基本的な例です。
{
"applinks": {
"apps": [],
"details": [
{
"appID": "TEAM_ID.BUNDLE_ID",
"paths": ["*"]
}
]
}
}
Apple開発者チームIDにTeam_idを置き、アプリのバンドルIDにBundle_idを置き換えます。 「パス」アレイは、アプリを開くことができるURLSを示しています。
Webサーバーの構成
Webサーバーは、AASAファイルを正しく送信する必要があります。これらのルールを設定します:
- HTTPSを使用してファイルを提供します。
- コンテンツタイプを「アプリケーション/JSON」に設定します。
- このファイルのリクエストをリダイレクトしないでください。
多くのサーバーは、これらの設定を.htaccessファイルで使用します。
<Files "apple-app-site-association">
ForceType 'application/json'
</Files>
Webブラウザーのhttps://yourdomain.com/apple-app-site-associationにアクセスして、セットアップをテストします。ファイルのJSONコンテンツが表示されます。
Xcodeで関連ドメインを設定します
アプリでAASAを使用するには:
- Xcodeプロジェクトを開きます。
- ターゲットをクリックしてください。
- 「署名と機能」タブに移動します。
- 「関連するドメイン」機能を追加します。
- 「applinks.com」のようなエントリを追加します。
アプリのコードでは、着信リンクを処理します。 Swiftでは、uiapplicationdelegateメソッドを使用します。
func application(_ application: UIApplication,
continue userActivity: NSUserActivity,
restorationHandler: @escaping ([UIUserActivityRestoring]?) -> Void) -> Bool {
if let incomingURL = userActivity.webpageURL {
// Handle the URL here
}
return true
}
このセットアップにより、アプリはウェブサイトから直接リンクを開くことができます。
AASAの高度なトピック
AASAファイルは、iOSアプリ開発者に強力な機能を提供します。これにより、ユニバーサルリンク、ディープリンク、およびアプリクリップのサポートが可能になります。これらのツールは、ユーザーエクスペリエンスとアプリエンゲージメントを大幅に高めることができます。
続きを読む:Safariのクロスサイト追跡を防ぎます
ユニバーサルリンクとディープリンクを使用します
ユニバーサルリンクにより、iOSアプリが特定のURLを処理できます。これにより、Webサイトとアプリの間にスムーズなリンクが作成されます。ユニバーサルリンクをセットアップするには、ASAファイルにアプリのIDを追加します。アプリに処理したいパスを含めます。
より柔軟なパスマッチングのためにワイルドカードを使用できます。例えば:
{
"applinks": {
"apps": [],
"details": [
{
"appID": "ABCDE12345.com.example.app",
"paths": ["/product/*", "/category/*"]
}
]
}
}
このセットアップにより、アプリは「example.com/product/123」や「emble.com/category/shoes」などのリンクを開くことができます。
ディープリンクは、アプリの特定のコンテンツにユーザーを使用します。 URLパラメーターを介してデータを渡すことができます。その後、アプリはこの情報を使用して、適切な画面またはコンテンツを表示します。
共有Web資格情報とハンドオフでユーザーエクスペリエンスを強化する
共有Web資格情報は、アプリにSafariから保存されたパスワードにアクセスできます。これにより、サインインが簡単になります。これを使用するには、AASAファイルに「WebCreDentials」キーを追加します。
{
"webcredentials": {
"apps": ["ABCDE12345.com.example.app"]
}
}
ハンドオフにより、ユーザーは1つのデバイスでタスクを開始し、別のデバイスで終了できます。ウェブサイトやアプリで動作します。ハンドオフをサポートするには、AASAファイルの「ActivityContinuation」キーを使用します。
{
"activitycontinuation": {
"apps": ["ABCDE12345.com.example.app"]
}
}
これらの機能は、デバイスやプラットフォーム間でシームレスなエクスペリエンスを作成します。
アプリクリップと代替モードをサポートします
アプリクリップは、ユーザーが迅速に実行できるアプリの小さな部分です。注文を出したり、自転車を借りたりするなどのタスクに最適です。アプリクリップをサポートするには、AASAファイルに「AppClips」キーを追加します。
{
"appclips": {
"apps": ["ABCDE12345.com.example.appclip"]
}
}
アプリの代替モードを設定することもできます。これは、「Lite」バージョンのようなものに役立ちます。これらのモードをAASAファイルの「詳細」キーの下に追加します。
{
"applinks": {
"details": [
{
"appID": "ABCDE12345.com.example.app",
"paths": ["/standard/*"],
"appIDs": ["ABCDE12345.com.example.app.lite"],
"components": [
{
"/": "/lite/*"
}
]
}
]
}
}
このセットアップを使用すると、さまざまなアプリバージョンで異なるパスを処理できます。
よくある質問
Apple App Site Association(AASA)ファイルは、Webサイトをアプリにリンクするのに役立ちます。 AASAファイルの使用に関するいくつかの一般的な質問を以下に示します。
自分のウェブサイトのAASAファイルを検証するにはどうすればよいですか?
Appleは、AASAファイルを確認するためのオンラインツールを提供します。 Apple検索検証ツールのWebサイトにアクセスしてください。ドメイン名を入力します。ツールはサイトをスキャンし、AASAファイルの問題を示します。
AASAファイルをホストするための正しいパスは何ですか?
AASAファイルをWebサーバーの / .Well-Nownd/フォルダーに配置します。フルパスは次のとおりです。
https://example.com/.well-known/apple-app-site-association
ファイル拡張機能なしでファイルにアクセスできることを確認してください。
AASAファイルは複数のアプリケーションをサポートできますか?
はい、単一のAASAファイルは多くのアプリにリンクできます。 JSONファイルの「Applinks」セクションに各アプリの詳細をリストします。接続する各アプリのアプリIDとパスを含めます。
AASAとの深いリンクのセットアップにどのようなステップが関係していますか?
深いリンクを設定するには:
- アプリの詳細とURLパスを備えたAASAファイルを作成する
- ファイルをWebサーバーにアップロードします
- Xcodeのアプリに関連するドメインを追加します
- アプリコードで着信URLを処理します
セットアップをテストして、リンクがアプリを正しく開くようにします。
AASAファイルはどのくらいの頻度でユーザーデバイスで更新されますか?
iOSは、ユーザーがアプリを開くとAASAファイルの更新をチェックします。また、バックグラウンドで定期的にチェックします。正確なタイミングは異なります。更新をより速くプッシュするには、ユーザーはアプリを削除および再インストールできます。
AASA実装の包括的なドキュメントはどこにありますか?
Appleの開発者Webサイトには、AASAファイルの詳細があります。 iOSドキュメントで「ユニバーサルリンクを有効化する」ガイドを探してください。ファイル形式、ホスティング、およびアプリにサポートを追加する方法をカバーしています。
