بنية قائمة كشف الحساب

قائمة الأحكام هي ملف أو مقتطف بترميز JSON في مكان معروف.

موقع قائمة كشوفات الحساب

راجِع إنشاء قائمة عبارات لمعرفة مكان تخزين هذه القائمة.

البنية

تتألّف قائمة البيانات أو المقتطف من مصفوفة JSON تتضمّن بيانًا واحدًا أو أكثر للموقع الإلكتروني أو التطبيق بتنسيق عناصر JSON. ويمكن أن تكون هذه العبارات بأي ترتيب. فيما يلي بناء الجملة العام:

[
  {
    "relation": ["relation_string"],
    "target": {target_object}
  } , ...
]
علاقة
مصفوفة من سلسلة واحدة أو أكثر تصف العلاقة المُعلَن عنها حول الهدف. اطّلِع على قائمة سلاسل العلاقات المحدّدة. مثال: delegate_permission/common.handle_all_urls
الاستهداف
مادة العرض المستهدَفة التي ينطبق عليها هذا البيان. أنواع الاستهداف المتاحة:
  • "target": {
      "namespace": "web",
      "site": "site_root_url"
    }
    مساحة الاسم
    يجب أن يكون web للمواقع الإلكترونية.
    الموقع
    معرّف الموارد المنتظم (URI) للموقع الإلكتروني المستهدف للعبارة بالتنسيق http[s]://<hostname>[:<port>]، حيث يكون <hostname> مؤهّلاً بالكامل، ويجب حذف <port> عند استخدام المنفذ 80 لـ HTTP، أو المنفذ 443 لـ HTTPS. يمكن أن يكون استهداف الموقع الإلكتروني نطاقًا جذريًا فقط. لا يمكنك قصرها على دليل فرعي محدد ستتطابق جميع الأدلة الموجودة تحت هذا الجذر. يجب عدم اعتبار النطاقات الفرعية متطابقة: أي إذا كان ملف البيان مستضافًا على www.example.com، يجب عدم اعتبار www.puppies.example.com مطابقًا. للاطّلاع على القواعد والأمثلة حول مطابقة استهدافات المواقع الإلكترونية، راجِع مستندات الاستهدافات. مثال: http://www.example.com
  • "target": {
      "namespace": "android_app",
      "package_name": "fully_qualified_package_name",
      "sha256_cert_fingerprints": ["cert_fingerprint"]
    }
    مساحة الاسم
    يجب أن يكون android_app لتطبيقات Android.
    package_name
    اسم الحزمة المؤهّل بالكامل للتطبيق الذي ينطبق عليه هذا البيان. مثال: com.google.android.apps.maps
    sha256_cert_fingerprints
    الملف المرجعي SHA265 بالأحرف اللاتينية الكبيرة لشهادة التطبيق الذي ينطبق عليه هذا البيان يمكنك احتساب ذلك باستخدام openssl أو Java keytool كما هو موضّح هنا:
    • 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 لتطبيقك في حساب المطوّر الخاص بك على Play Console ضمن Release > Setup > App Integrity. إذا كنت تستخدم هذه الميزة، سيظهر لك أيضًا مقتطف JSON الصحيح لروابط التنقل إلى مواد العرض الرقمية لتطبيقك في الصفحة نفسها.

أمثلة على قائمة العبارات

في ما يلي مثال على قائمة عبارات الموقع الإلكتروني التي تتضمّن بيانات حول المواقع الإلكترونية والتطبيقات: http://example.digitalassetlinks.org/.well-known/assetlinks.json.

التوسيع إلى عشرات العبارات أو أكثر

في بعض الحالات، قد يريد مشرف إصدار العديد من البيانات المختلفة عن استهدافات مختلفة، أو قد تكون هناك حاجة إلى إصدار بيانات من مشرفين مختلفين إلى المجموعة نفسها من الاستهدافات. على سبيل المثال، قد يستخدم موقع ويب متوفرة في العديد من نطاقات المستوى الأعلى المختلفة لكل بلد، وجميعها قد يرغب في إصدار بيان حول نفس تطبيق الهاتف المحمول.

في هذه الحالات، يمكن أن يكون استخدام عبارات التضمين مفيدًا. باستخدام هذه الآلية، يمكنك إعداد مؤشرات من العديد من العناصر الرئيسية المختلفة لتحديد موقع مركزي واحد يحدّد عبارات لجميع العناصر الرئيسية.

على سبيل المثال، قد تقرر أن الموقع المركزي يجب أن يكون "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>

مزيد من المعلومات

يمكنك الاطّلاع على مستند المواصفات للحصول على شرح أكثر تفصيلاً لتنسيق قائمة العبارات والمفاهيم الأساسية.