ステートメント リストの構文
コレクションでコンテンツを整理
必要に応じて、コンテンツの保存と分類を行います。
ステートメント リストは、既知の場所にある JSON エンコード のファイルまたはスニペットです。
ステートメント リストの場所
このリストを保存する場所については、ステートメント リストの作成 をご覧ください。
構文
ステートメント リストまたはスニペットは、1 つ以上のウェブサイトまたはアプリのステートメントの JSON 配列(JSON オブジェクト)で構成されます。これらのステートメントは任意の順序で指定できます。一般的な構文は次のとおりです。
[
{
"relation": ["relation_string "],
"target": {target_object }
} , ...
]
relation
ターゲットに関して宣言される関係を記述する 1 つ以上の文字列の配列。定義済みの関係文字列 のリストをご覧ください。例: delegate_permission/common.handle_all_urls
ターゲット
このステートメントが適用されるターゲット アセット。使用可能なターゲット タイプ:
<ph type="x-smartling-placeholder"></ph>
ウェブサイト ターゲット
"target" : {
"namespace" : "web" ,
"site" : "site_root_url "
}
namespace
ウェブサイトの場合は web
にする必要があります。
サイト
ステートメントのターゲットとなるサイトの URI(http[s]://<hostname >[:<port >]
形式)。<hostname> は完全修飾する必要があります。HTTP にポート 80 を使用する場合、または HTTPS にポート 443 を使用する場合は、<port> を省略する必要があります。ウェブサイトのターゲットにはルートドメインのみを指定できます。特定のサブディレクトリに限定することはできません。すべてのディレクトリが一致します。サブドメインは一致と見なされません。つまり、記述ファイルが www.example.com でホストされている場合、www.puppies.example.com は一致と見なされません。ウェブサイト ターゲット マッチングのルールと例については、ターゲットに関するドキュメント をご覧ください。例: http://www.example.com
Android アプリ ターゲット
"target" : {
"namespace" : "android_app" ,
"package_name" : "fully_qualified_package_name " ,
"sha256_cert_fingerprints" : [ "cert_fingerprint " ]
}
namespace
Android アプリの場合は android_app
にする必要があります。
package_name
このステートメントが適用されるアプリの完全修飾パッケージ名。例: com.google.android.apps.maps
sha256_cert_fingerprints
この証明書が参照するアプリの証明書の大文字の SHA265 フィンガープリント
ステートメントです。次のように、
openssl
または Java の keytool
を使用して計算できます。
<ph type="x-smartling-placeholder"></ph>
openssl x509 -in $CERTFILE -noout -fingerprint -sha256
keytool -printcert -file $CERTFILE | grep SHA256
例: ["14:6D:E9:83:C5:73:06:50:D8:EE:B9:95:2F:34:FC:64:16:A0:83:42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:44:E5"]
。
Play アプリ署名 を使用している場合
この場合、keytool
を実行して生成された証明書フィンガープリント
ローカルの openssl
は通常、ローカルの
ユーザーできます。アプリで Play アプリ署名を使用しているかどうかは、
Google Play Console デベロッパー アカウント
Release > Setup > App Integrity 未満追加すれば
アプリの正しいデジタル アセット リンクの JSON スニペットも
できます。
ステートメント リストの例
ウェブサイトとアプリの両方に関するステートメントを含むウェブサイト ステートメント リストの例を以下に示します。http://example.digitalassetlinks.org/.well-known/assetlinks.json
数十個以上のステートメントへのスケーリング
場合によっては、プリンシパルは多数の異なるステートメントを行いたいことがあります
さまざまなターゲットに関する記述があり、
異なるプリンシパルを同じターゲット セットに割り当てます。たとえば、ウェブサイトは
国ごとに多数の異なるトップレベル ドメインで利用でき、
同じモバイルアプリについて言及するとよいでしょう
このような場合は、include ステートメント が役立ちます。このメカニズムを使用すると、さまざまなプリンシパルからリソースへのポインタを設定でき、
すべてのプリンシパルのステートメントを定義する、一元的な場所。
注: 1 つの完全な URL で最大 10 個の include ステートメントを使用できます。
ステートメントリストツリーです。つまり、ツリー内のファイルの最大数は、(10 個のステートメント ファイル)+(ルート ステートメント ファイル)= 合計 11 個です。たとえば、一元化された場所を「https://example.com/includedstatements.json」に設定できます。このファイルには、上記の例と同じ内容を含めるように設定できます。
ウェブサイト からインクルード ファイルへのポインタを設定するには、https://example.com/.well-known/assetlinks.json を次のように変更します。
[{
"include": "https://example.com/includedstatements.json"
}]
Android アプリ からインクルードへのポインタを設定するには
`res/values/strings.xml` を次のように変更します。
<resources>
...
<string name="asset_statements">
[{
\"include\": \"https://example.com/includedstatements.json\"
}]
</string>
</resources>
ステートメント リストの形式と基盤となるコンセプトの詳細については、仕様書 をご覧ください。
特に記載のない限り、このページのコンテンツはクリエイティブ・コモンズの表示 4.0 ライセンス により使用許諾されます。コードサンプルは Apache 2.0 ライセンス により使用許諾されます。詳しくは、Google Developers サイトのポリシー をご覧ください。Java は Oracle および関連会社の登録商標です。
最終更新日 2024-10-14 UTC。
[[["わかりやすい","easyToUnderstand","thumb-up"],["問題の解決に役立った","solvedMyProblem","thumb-up"],["その他","otherUp","thumb-up"]],[["必要な情報がない","missingTheInformationINeed","thumb-down"],["複雑すぎる / 手順が多すぎる","tooComplicatedTooManySteps","thumb-down"],["最新ではない","outOfDate","thumb-down"],["翻訳に関する問題","translationIssue","thumb-down"],["サンプル / コードに問題がある","samplesCodeIssue","thumb-down"],["その他","otherDown","thumb-down"]],["最終更新日 2024-10-14 UTC。"],[[["A statement list is a JSON file that describes relationships between websites and Android apps, used for features like Digital Asset Links."],["The list consists of statements with \"relation\" and \"target\" fields, where \"target\" can be a website or an Android app."],["Website targets are specified using a \"site\" field with a URL, while Android app targets use \"package_name\" and \"sha256_cert_fingerprints\"."],["For many statements, use \"include\" to point to a central file to avoid redundancy and simplify management."],["Detailed syntax and examples are provided to guide you in creating and using statement lists effectively."]]],[]]