iOS / Android Dev Tools

AASA検証最初に採用される規則を追う

AASAと複数のURLを貼り付け、必要ならApp IDを指定します。規則の判定だけを行い、ドメインには接続しません。

AASA検証

入力

報告

例を編集してから検証してください。

このタブ内で処理します。入力されたドメインやURLへは接続しません。

設定

空欄なら宣言済みの全App IDを表示します。指定時は完全一致です。

例を編集してから検証してください。

特定のリンクだけSafariに残る場合、AASA検証は公開前にどの規則が先に一致するかを示します。JSONの構文が正しいだけでは、後ろの除外規則が使われない理由は分かりません。

AASA検証は貼り付けた内容からApp IDと決定規則を示すローカル試験です。配信サーバー、Apple CDNのキャッシュ、端末に入ったアプリの動作は別の確認として残します。

AASA検証を先に行う理由

許可と除外を公開前に分ける

AASA検証では複数URLを同じ規則列に通し、許可、除外、一致なしを別々に表示します。まだサーバーに置いていないファイルも調べられます。

ローカルの規則文書から三本のURLが許可、除外、一致なしへ分かれ、クラウドは切り離されている。

後続の除外が隠れる順番を見抜く

広い規則が先に一致すると、後ろにある除外規則には到達しません。AASA検証は決定した規則番号を示し、明白な後続規則の隠れも警告します。

上の広い規則がURLを先に受け止め、下の除外規則へ届かない。

ローカル判定と端末試験を取り違えない読み方

01

関連付け全体を用意する

applinks.detailsを含むJSON全体を貼ります。例は新しいappIDsとcomponentsを使用し、旧式のappIDとpathsも扱います。構文エラーは行と列を確認します。 apple-app-site-associationも貼り付けられます。

  • 例を読み込むと、通常のパス、除外、クエリ条件を比較できます。
02

対象アプリとURLを絞る

HTTPSのURLまたはスラッシュで始まるパスを一行ずつ入力します。App IDを空にすると、宣言された全アプリを確認できます。入力変更後は結果が古くなります。

  • Ctrl/Cmd+Enterでも手動実行できます。URLへのアクセスは起きません。
03

最初の決定規則を読む

detailsと規則番号を確認してから報告を出力します。一致は貼り付けた規則がアプリを選んだ意味で、配信と端末の項目はすべて未確認です。 パスのマッチングを規則番号から追えます。

  • 古い結果はコピーもダウンロードもできません。

URLごとに決定理由を残す

新旧の書式を区別

componentsではパス、クエリ、フラグメント、excludeを確認します。旧式pathsではNOTを順番に処理し、二つの意味を混同しません。 Universal Links検証では書式の違いが重要です。

App IDごとの結果

同じURLを宣言済みの各App IDへ照合できます。指定したIDがファイルにない場合は、パスが一致しない場合と別に表示します。

再確認できる報告

AASA検証のJSON報告には構造上の指摘、入力行、決定規則、未確認の配信項目が入ります。公開時の記録に残せます。

判定できる範囲とできない範囲

サーバーは調べない
AASA検証はドメインを取得しません。TLS、転送、Content-Type、公開状態、Apple CDNのコピーは未確認のままです。
分からない構文は不明とする
substitutionVariables、書式の混在、未対応のcomponentキーは「一致なし」に置き換えず判定不能と示します。必要ならAppleのswcutilで照合してください。
署名済みアプリは見えない
JSON内のTeam IDとBundle IDの形は調べられても、署名されたentitlement、端末の設定、Safari内の遷移はAASA検証から分かりません。
別サービスは対象外
webcredentials、appclips、Androidのassetlinks.jsonは検証しません。含まれていれば未検査と記録し、ファイル全体の合格とは言いません。

AASA検証でよく調べられる疑問

AASAが正しくてもUniversal Linksでアプリが開かないのはなぜですか?

AASA検証で分かるのは貼り付けた規則の一致です。公開ファイル、CDN、Associated Domains、インストール状態、タップした場所も関係するため、端末で別途試してください。

AASAのcomponentsとpathsはどう違いますか?

旧式pathsはパスだけを順番に調べ、NOTで除外します。componentsはパスに加えてクエリやフラグメントを指定できます。同じdetails内で混ぜた場合は判定不能にします。

指定したURLがどのAASA規則に一致するか分かりますか?

はい。URLを一行ずつ入力すると、該当するApp IDと最初に決定したdetailsと規則番号を表示します。これはJSON上の判定です。

AASAを変更してもすぐ反映されないのはなぜですか?

Apple CDNと端末のキャッシュが関係します。このページはネットワーク確認を行わないので、CDNの内容と実機を別途確かめてください。

公開前にAASAのパスを検証できますか?

できます。ファイルを貼り付ければローカルの規則判定が行えます。ただしHTTPS配信や署名済みアプリとの対応は公開後に別途確認が必要です。

規則がまだ分かりませんか?

公開前にAASA検証を実行

実際のURLと対象App IDを照合し、未確認の配信項目をリリース確認へ引き継ぎましょう。