الإعداد

توضّح هذه الصفحة كيفية إعداد تطبيقك أو لعبتك لاستخدام واجهة برمجة التطبيقات Play Integrity API. عليك تفعيل الردود من واجهة برمجة التطبيقات ثم دمجها في تطبيقك وخادم الخلفية الخاص به. تتوفّر خيارات إعداد إضافية وميزات اختبار وإعداد تقارير بمجرد ربط مشروع Google Cloud الذي تستخدمه مع Play Integrity API في Google Play Console.

تفعيل الردود من واجهة برمجة التطبيقات Play Integrity API

يجب أن يستخدم كل تطبيق أو حزمة SDK يستدعيان واجهة Play Integrity API مشروعًا على Google Cloud لتتبُّع استخدام واجهة برمجة التطبيقات. يمكن للتطبيقات على Google Play ربط مشروع على Cloud في Google Play Console لتفعيل ميزة الردود من واجهة Play Integrity API. إذا أردت إنشاء مشروع جديد على Cloud أو كان تطبيقك متاحًا حصريًا خارج Google Play، يمكنك تفعيل الردود من واجهة برمجة التطبيقات Play Integrity API من Google Cloud Console.

الإعداد في Google Play Console (يُنصح به)

من خلال تفعيل ردود Play Integrity API في Google Play Console، يمكنك الاستفادة من خيارات إعداد إضافية وميزات اختبار وإعداد تقارير عن واجهة برمجة التطبيقات. لا يتوفّر هذا الخيار إلا للتطبيقات الموزَّعة على Google Play. انتقِل إلى الإصدار > سلامة التطبيق. ضمن Play Integrity API، انقر على ربط مشروع على السحابة الإلكترونية. اختَر مشروع Cloud الذي تريد ربطه بتطبيقك، وسيؤدي ذلك إلى تفعيل الردود من واجهة برمجة التطبيقات Play Integrity API. يمكنك الآن دمج واجهة برمجة التطبيقات Play Integrity API في تطبيقك.

الإعداد في Google Cloud Console

في Google Cloud Console، أنشِئ مشروعًا جديدًا على السحابة الإلكترونية أو اختَر مشروعًا حاليًا على السحابة الإلكترونية تريد استخدامه مع Play Integrity API. انتقِل إلى واجهات برمجة التطبيقات والخدمات. انقر على تفعيل واجهات برمجة التطبيقات والخدمات. ابحث عن Play Integrity API ثم فعِّلها. يمكنك الآن دمج واجهة برمجة التطبيقات Play Integrity API في تطبيقك.

تعليمات الإعداد لموفّري حِزم تطوير البرامج (SDK)

على مقدّمي حِزم SDK استخدام مشاريعهم الخاصة على Google Cloud لاستدعاء واجهة برمجة التطبيقات Play Integrity API، وذلك حتى يتم إسناد استخدام واجهة برمجة التطبيقات إلى حزمة SDK وليس إلى التطبيقات الفردية التي تستخدم حزمة SDK. وهذا يعني أنّه ليس على التطبيقات التي تستخدم حزمة SDK إعداد واجهة برمجة التطبيقات Play Integrity API بشكل فردي. يتم تلقائيًا احتساب طلباتك إلى واجهة Play Integrity API ضمن استخدام واجهة برمجة التطبيقات لحزمة SDK وليس للتطبيق.

يتوفّر لمطوّري حِزم SDK خياران لإعداد واجهة برمجة التطبيقات Play Integrity API، وهما Google Play SDK Console أو Google Cloud Console.

من خلال تفعيل ميزة الردود من واجهة Play Integrity API في Google Play SDK Console، يمكنك الاستفادة من خيارات إعداد إضافية. انتقِل إلى صحة بيانات حزمة تطوير البرامج (SDK) وانقر على الإعدادات. ضمن "إعدادات المشروع"، اختَر ربط مشروع على Cloud. اختَر مشروع Cloud الذي تريد ربطه بحزمة SDK، وسيؤدي ذلك إلى تفعيل الردود من واجهة Play Integrity API. يمكنك الآن دمج واجهة Play Integrity API في حزمة SDK. يُرجى العِلم أنّ الوصول إلى Google Play SDK Console يخضع لمعايير الأهلية.

استخدام Google Cloud Console

يمكنك تفعيل الردود من واجهة برمجة التطبيقات Play Integrity API من Google Cloud Console. في Google Cloud Console، أنشِئ مشروعًا جديدًا على السحابة الإلكترونية أو اختَر مشروعًا حاليًا على السحابة الإلكترونية تريد استخدامه مع Play Integrity API. انتقِل إلى واجهات برمجة التطبيقات والخدمات. انقر على تفعيل واجهات برمجة التطبيقات والخدمات. ابحث عن Play Integrity API ثم فعِّلها. يمكنك الآن دمج واجهة Play Integrity API في حزمة SDK.

زيادة عدد الطلبات اليومية المُرسَلة إلى واجهة Play Integrity API من حزمة SDK

على موفّري حِزم SDK الذين يريدون زيادة الحد الأقصى للطلبات اليومية إكمال نموذج طلب الحصة. في قسم التعليقات المفتوح، حدِّد أنّك تقدّم طلبًا بشأن حزمة تطوير برامج (SDK)، وأدرِج معرّفات Maven ‏(groupId:artifactId) أو عنوان URL إلى حزمة تطوير البرامج (SDK).

حدود استخدام Play Integrity API

سيخضع تطبيقك لحد أقصى يبلغ 10,000 طلب إجمالي لكل تطبيق في اليوم. يمكنك طلب زيادة هذا الحد الأقصى اليومي إذا كان تطبيقك بحاجة إلى استيعاب عدد أكبر من المستخدمين باتّباع التعليمات أدناه.

الإجراء الحصة اليومية لكل تطبيق الملاحظات
طلبات الرموز المميزة 10,000 مشترَكة بين الطلبات الكلاسيكية وعمليات إعداد الرموز المميّزة العادية
فك تشفير الرموز المميزة على خوادم Google 10,000 مشترَكة بين الطلبات الكلاسيكية والعادية

زيادة الحد الأقصى لعدد الطلبات اليومية

لكي يكون تطبيقك مؤهَّلاً لزيادة الحد الأقصى لعدد الطلبات اليومية، يجب أن يكون متاحًا على Google Play بالإضافة إلى أي قنوات توزيع أخرى. حتى مع زيادة الحدّ الأقصى اليومي، عليك مواصلة الحدّ من عدد الطلبات الكلاسيكية لكل مستخدم لتقتصر على الإجراءات المهمة غير المتكرّرة من أجل الحفاظ على بيانات المستخدمين والبطارية.

لطلب زيادة الحد الأقصى لعدد الطلبات اليومية، اتّبِع الخطوات التالية:

  1. اربط مشروع Google Cloud الذي تستخدمه مع Play Integrity API في Play Console.
  2. تأكَّد من أنّك تنفّذ منطق واجهة برمجة التطبيقات بشكلٍ صحيح، بما في ذلك إستراتيجية إعادة المحاولة المقترَحة.
  3. يمكنك طلب زيادة الحصة باستخدام هذا النموذج.

قد يستغرق الأمر ما يصل إلى أسبوع لزيادة حصة واجهة برمجة التطبيقات Play Integrity API، لذا ننصحك بشدة بمراقبة استخدامك لواجهة برمجة التطبيقات Play Integrity API في Google Play Console أو في Google Cloud Console، حيث يمكنك أيضًا إعداد تنبيهات بشأن الحصة لتجنُّب حدوث انقطاعات في الخدمة.

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

دمج واجهة برمجة التطبيقات Play Integrity API في تطبيقك

لدمج واجهة برمجة التطبيقات Play Integrity API في تطبيقك أو حزمة SDK، اتّبِع أحد الإجراءَين التاليَين حسب بيئة التطوير:

Kotlin أو Java

تتوفّر أحدث مكتبة Android لواجهة برمجة التطبيقات Play Integrity API من خلال مستودع Maven من Google. أضِف التبعية التالية إلى ملف build.gradle في تطبيقك:

implementation 'com.google.android.play:integrity:1.4.0'

Unity

توضّح الأقسام التالية كيفية دمج واجهة Google Play Integrity API وإعدادها لمشاريع Unity، وتتضمّن هذه الأقسام إصدارات Unity المتوافقة وطُرق التثبيت وإعداد البيئة.

إصدارات Unity المتوافقة

  • تتوافق جميع الإصدارات ‎2019.x و‎2020.x والإصدارات الأحدث.
  • إذا كنت تستخدم Unity 2018.x، تتوافق الإصدارات 2018.4 أو الإصدارات الأحدث.
  • الإصدار Unity 2017.x والإصدارات الأقدم غير متوافقة.

إعداد بيئة التطوير

OpenUPM-CLI

إذا كان لديك OpenUPM CLI مثبّتًا، يمكنك تثبيت سجلّ OpenUPM باستخدام الأمر التالي:

openupm add com.google.play.integrity

OpenUPM

  1. افتح إعدادات مدير الحزم من خلال النقر على خيار قائمة Unity تعديل (Edit) > إعدادات المشروع (Project Settings) > مدير الحزم (Package Manager).

  2. أضِف OpenUPM كسجلّ محدّد النطاق إلى نافذة "مدير الحزم" باتّباع الخطوات التالية:

    Name: package.openupm.com
    URL: https://package.openupm.com
    Scopes: com.google.external-dependency-manager
      com.google.play.common
      com.google.play.core
      com.google.play.integrity
    
  3. افتح قائمة إدارة الحزم من خلال النقر على خيار قائمة Unity Window > Package Manager.

  4. اضبط القائمة المنسدلة لنطاق المدير على سجلاتي.

  5. اختَر حزمة المكوّن الإضافي "Google Play Integrity" لبرنامج Unity من قائمة الحِزم، ثم انقر على تثبيت.

الاستيراد من GitHub

  1. نزِّل أحدث إصدار من .unitypackage من GitHub.

  2. استورِد ملف .unitypackage من خلال اختيار خيار قائمة Unity Assets > Import package > Custom Package واستيراد جميع العناصر.

Unreal Engine

توضّح الأقسام التالية كيفية دمج واجهة برمجة التطبيقات Google Play Integrity API وإعدادها لمشاريع Unreal Engine.

إصدارات Unreal Engine المتوافقة

يتوافق المكوّن الإضافي مع Unreal Engine 5.0 وجميع الإصدارات اللاحقة.

إعداد بيئة التطوير

  1. نزِّل المكوّن الإضافي Play Unreal Engine من مستودع GitHub.

  2. انسخ المجلد GooglePlay داخل المجلد Plugins في مشروع Unreal Engine.

  3. افتح مشروع Unreal Engine وانقر على تعديل (Edit) → الإضافات (Plugins).

  4. ابحث عن Google Play وضَع علامة في مربّع الاختيار مفعَّل.

  5. أعِد تشغيل مشروع اللعبة وابدأ عملية إنشاء.

  6. افتح ملف Build.cs الخاص بمشروعك وأضِف وحدة PlayIntegrity إلى PublicDependencyModuleNames:

    using UnrealBuildTool;
    
    public class MyGame : ModuleRules
    {
      public MyGame(ReadOnlyTargetRules Target) : base(Target)
      {
        // ...
    
        PublicDependencyModuleNames.Add("PlayIntegrity");
    
        // ...
      }
    }
    

مدمجة مع المحتوى

ثبِّت الإصدار 1.13.0 أو إصدارًا أحدث من حزمة تطوير البرامج (SDK) الأصلية لمكتبة Play Core. للحصول على التعليمات، يُرجى الاطّلاع على دليل إعداد بيئة التطوير في Play Core Native.

ضبط الردود من واجهة برمجة التطبيقات (اختياري)

يتضمّن الردّ من واجهة برمجة التطبيقات بيانات السلامة التلقائية التي يتم عرضها في كل طلب. إذا أعددت عملية دمج واجهة برمجة التطبيقات Play Integrity API في Play Console، يمكنك تخصيص ردود واجهة برمجة التطبيقات.

الردود التلقائية

يتم بشكل تلقائي عرض بيانات السلامة التالية في الردّ من واجهة برمجة التطبيقات Play Integrity API:

حقل الردّ القيمة الوصف
سلامة الجهاز MEETS_DEVICE_INTEGRITY يعمل التطبيق على جهاز Android حقيقي معتمَد من "Play للحماية". في الإصدار 13 من نظام التشغيل Android والإصدارات الأحدث، تتوفّر شهادة معتمدة من الجهاز تثبت أنّ برنامج إقلاع الجهاز مقفل وأنّ نظام التشغيل Android الذي تم تحميله هو صورة معتمدة من الشركة المصنّعة للجهاز.
فارغ (قيمة فارغة) يعمل التطبيق على جهاز يتضمّن علامات تشير إلى تعرُّضه للهجوم (مثل اعتراض طلبات البيانات من واجهة برمجة التطبيقات) أو اختراق نظامه (مثل تزويده بإذن الوصول إلى الجذر)، أو لا يعمل التطبيق على جهاز فعلي (مثل المحاكي الذي لا يجتاز عمليات التأكّد من السلامة في Google Play).
تفاصيل حساب Play LICENSED يملك المستخدِم إذن الوصول إلى التطبيق. بمعنى آخر، ثبَّت المستخدم تطبيقك أو حدَّثه من Google Play على جهازه.
UNLICENSED لا يملك المستخدِم إذنًا للوصول إلى التطبيق. ويحدث ذلك مثلاً في حال ثبَّت المستخدم تطبيقك من مصدر غير معروف أو لم يحصل عليه من Google Play.
UNEVALUATED لم يتم تقييم تفاصيل الترخيص بسبب عدم استيفاء أحد المتطلّبات. وقد يحدث ذلك لعدة أسباب، بما فيها ما يلي:
  • الجهاز غير موثوق بالقدر الكافي
  • لم يسجّل المستخدم الدخول إلى Google Play.
  • لا يتعرّف Google Play على إصدار التطبيق المثبّت على الجهاز
سلامة التطبيق PLAY_RECOGNIZED يتطابق التطبيق وشهادة التطبيق مع الإصدارات التي تم توزيعها من خلال Google Play.
UNRECOGNIZED_VERSION لا تتطابق شهادة التطبيق أو اسم حزمة التطبيق مع سجلّات Google Play
UNEVALUATED لم يتم تقييم سلامة التطبيق. ولم يتم استيفاء أحد المتطلّبات الضرورية، مثلاً أن يكون الجهاز غير موثوق بالقدر الكافي.

الردود الشرطية

في حال توزيع التطبيق على مستخدمي "ألعاب Google Play" على الكمبيوتر، سيتم تلقائيًا تفعيل خدمة تلقّي تصنيف إضافي في نتيجة تقييم سلامة الجهاز:

حقل الردّ التصنيف الوصف
سلامة الجهاز MEETS_VIRTUAL_INTEGRITY يعمل التطبيق على محاكي Android متوافق مع "خدمات Google Play". يجتاز المحاكي عمليات التأكّد من سلامة النظام ويستوفي متطلّبات التوافق الأساسية مع نظام Android.

الردود الاختيارية

إذا أعددت عملية دمج واجهة برمجة التطبيقات Play Integrity API في Play Console أو Play SDK Console، يمكنك الموافقة على تلقّي معلومات في الردّ من واجهة برمجة التطبيقات.

لإجراء تغييرات على ردود واجهة برمجة التطبيقات، انتقِل إلى Play Console ثم إلى الإصدار > سلامة التطبيق. ضمن الردود، عدِّل التغييرات واحفظها.

معلومات الجهاز الاختيارية وميزة "تذكُّر الجهاز"

يمكن للتطبيقات وحِزم SDK الموافقة على تلقّي تصنيفات إضافية للأجهزة في نتيجة فحص سلامة الجهاز. بعد الموافقة على تلقّي تصنيفات إضافية، سيتضمّن الرد بشأن السلامة تصنيفات متعددة للجهاز نفسه في حال استيفاء كل معايير التصنيفات. يمكنك إعداد خادم الخلفية للعمل بشكل مختلف بناءً على نطاق الردود المحتملة. على سبيل المثال، يمكن الوثوق بالجهاز الذي يعرض ثلاث تصنيفات (MEETS_STRONG_INTEGRITY وMEETS_DEVICE_INTEGRITY وMEETS_BASIC_INTEGRITY) أكثر من الجهاز الذي يعرض تصنيفًا واحدًا فقط (MEETS_BASIC_INTEGRITY).

يمكنك الموافقة على تلقّي سمات الجهاز التي توضّح لك إصدار حزمة تطوير البرامج (SDK) لنظام التشغيل Android الذي يعمل على الجهاز. وقد يتم توسيع نطاقها في المستقبل لتشمل سمات أخرى للأجهزة.

يمكنك الموافقة على تفعيل ميزة الأنشطة الحديثة على الجهاز. تعرض ميزة "نشاط الجهاز الحديث" مستوى يتراوح بين LEVEL_1 (عدد منخفض من الطلبات) وLEVEL_4 (عدد كبير من الطلبات). على سبيل المثال، قد يحاول جهاز يعرض مستوى نشاط أعلى بكثير من المستوى المعتاد لتطبيقك إنشاء عدد كبير من رموز السلامة المميزة لتوزيعها على أجهزة غير موثوق بها.

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

بعد الموافقة على مشاركة معلومات الجهاز الاختيارية وتذكُّر الجهاز، سيتضمّن ردّ واجهة برمجة التطبيقات حقولًا واستجابات جديدة لسلامة الجهاز في البيان:

حقل الردّ التصنيف الوصف
سلامة الجهاز MEETS_BASIC_INTEGRITY يعمل التطبيق على أي جهاز يجتاز عمليات التحقق الأساسية من سلامة النظام. يمكن أن يكون برنامج إقلاع الجهاز مقفلاً أو مفتوحًا، ويمكن أن تكون حالة التشغيل متحقَّقًا منها أو غير متحقَّق منها. قد لا يكون الجهاز معتمدًا من "Play للحماية"، وفي هذه الحالة، لا يمكن أن تقدّم Google أي ضمانات بشأن الأمان أو الخصوصية أو توافق التطبيقات. في نظام التشغيل Android 13 والإصدارات الأحدث، يتطلّب بيان MEETS_BASIC_INTEGRITY أن توفّر Google شهادة التصديق لجذر الثقة.
MEETS_STRONG_INTEGRITY يعمل التطبيق على جهاز Android حقيقي معتمَد من "Play للحماية" ويتضمّن آخر تحديث أمان.
  • في الإصدار 13 من نظام التشغيل Android والإصدارات الأحدث، يتطلّب الحكم MEETS_STRONG_INTEGRITY تلقّي MEETS_DEVICE_INTEGRITY وتحديثات الأمان في العام الماضي لجميع أقسام الجهاز، بما في ذلك تصحيح قسم نظام التشغيل Android وتصحيح قسم المورّد.
  • في الإصدار 12 من نظام التشغيل Android والإصدارات الأقدم، لا تتطلّب نتيجة MEETS_STRONG_INTEGRITY إلا إثباتًا على سلامة عملية التشغيل باستخدام مفتاح احتياطي، ولا تتطلّب أن يكون الجهاز قد تلقّى آخر تحديث أمان. لذلك، عند استخدام MEETS_STRONG_INTEGRITY، ننصحك أيضًا بمراعاة إصدار حزمة تطوير البرامج (SDK) لنظام التشغيل Android في الحقل deviceAttributes.
سمات الجهاز sdkVersion: 19, 20, ..., 36 يشير ذلك إلى إصدار حزمة تطوير البرامج (SDK) لنظام التشغيل Android الذي يعمل على الجهاز. يرتبط الرقم المعروض بـ Build.VERSION_CODES.
فارغ (قيمة فارغة) لم يتم تقييم إصدار حزمة تطوير البرامج (SDK) بسبب عدم استيفاء أحد المتطلّبات الضرورية. في هذه الحالة، لم يتم ضبط الحقل sdkVersion، وبالتالي يكون الحقل deviceAttributes فارغًا. قد يحدث ذلك للأسباب التالية:
  • الجهاز غير موثوق بالقدر الكافي
  • حدثت مشاكل فنية على الجهاز.
طلبات الرموز المميزة للسلامة العادية لواجهة برمجة التطبيقات على هذا الجهاز خلال آخر ساعة لكل تطبيق طلبات الرمز المميز للسلامة في واجهة برمجة التطبيقات الكلاسيكية على هذا الجهاز خلال الساعة الأخيرة لكل تطبيق
أحدث نشاط للجهاز LEVEL_1 (الأقل) 10 أو أقل 5 أو أقل
LEVEL_2 بين 11 و25 بين 6 و10
LEVEL_3 بين 26 و50 بين 11 و15
LEVEL_4 (الأعلى) أكثر من 50 أكثر من 15
UNEVALUATED لم يتم تقييم أحدث نشاط للجهاز. قد يحدث ذلك للأسباب التالية:
  • الجهاز غير موثوق بالقدر الكافي
  • لا يتعرّف Google Play على إصدار التطبيق المثبّت على الجهاز.
  • حدثت مشاكل فنية على الجهاز.
تذكُّر الجهاز values: bitFirst, bitSecond, bitThird هذه هي قيم البت التي ضبطتها في السابق للجهاز المحدّد. أنت تحدّد معنى كل جزء. تكون قيم البت الثلاث خطأ تلقائيًا.
writeDates: yyyymmFirst, yyyymmSecond, yyyymmThird هذه هي تواريخ كتابة قيمة البت بالتوقيت العالمي المنسق (UTC) بدقة تصل إلى السنة والشهر. يتم تعديل تاريخ الكتابة لوحدة بت الاستدعاء في كل مرة يتم فيها ضبط وحدة البت على القيمة true، وتتم إزالتها عند ضبط وحدة البت على القيمة false.

تفاصيل البيئة الاختيارية

يمكن للتطبيقات الموافقة على تلقّي بيانات إضافية عن البيئة. تتيح لك ميزة احتمالية اختراق التطبيق معرفة ما إذا كانت هناك تطبيقات أخرى قيد التشغيل يمكنها أخذ لقطات للشاشة أو عرض المحتوى على سطح الصفحة أو التحكم في الجهاز. يتيح لك بيان "Play للحماية" معرفة ما إذا كانت خدمة "Play للحماية" مفعَّلة على الجهاز وما إذا كان قد تم اكتشاف برامج ضارة معروفة.

بعد الموافقة على تلقّي هذه البيانات، سيتضمّن ردّ واجهة برمجة التطبيقات حقل تفاصيل البيئة مع البيان:

حقل الردّ القيمة الوصف
بيان خطورة الوصول إلى التطبيق KNOWN_INSTALLED يتم تثبيت التطبيقات من خلال Google Play أو تحميلها مسبقًا على قسم النظام من قِبل الشركة المصنّعة للجهاز.
KNOWN_CAPTURING يتم تشغيل التطبيقات المثبَّتة من خلال Google Play أو المحمَّلة مسبقًا على الجهاز، ويمكن استخدامها لقراءة أو تسجيل المدخلات والمخرجات الخاصة بالتطبيق الذي يطلب الإذن، مثل تطبيقات تسجيل الشاشة.
KNOWN_CONTROLLING يتم تشغيل التطبيقات المثبَّتة من خلال Google Play أو المحمَّلة مسبقًا على الجهاز، ويمكن استخدامها للتحكّم في الجهاز وفي مدخلات ومخرجات التطبيق الذي يطلب الإذن، مثل تطبيقات التحكّم عن بُعد.
KNOWN_OVERLAYS يتم تشغيل تطبيقات مثبَّتة من خلال Google Play أو محمَّلة مسبقًا على الجهاز، وقد تعرض هذه التطبيقات تراكبات على التطبيق الذي يطلب الإذن.
UNKNOWN_INSTALLED تثبيت تطبيقات أخرى لم يتم تثبيتها من خلال Google Play أو تحميلها مسبقًا على قسم النظام من قِبل الشركة المصنّعة للجهاز
UNKNOWN_CAPTURING تتوفّر تطبيقات أخرى قيد التشغيل (لم يتم تثبيتها من خلال Play أو تحميلها مسبقًا على الجهاز) يمكن استخدامها لقراءة أو تسجيل المدخلات والمخرجات الخاصة بالتطبيق الذي يطلب الإذن، مثل تطبيقات تسجيل الشاشة.
UNKNOWN_CONTROLLING تتوفّر تطبيقات أخرى (لم يتم تثبيتها من خلال Play أو تحميلها مسبقًا على الجهاز) يمكن استخدامها للتحكّم في الجهاز وفي مدخلات ومخرجات التطبيق الذي يطلب الإذن، مثل تطبيقات التحكّم عن بُعد.
UNKNOWN_OVERLAYS تتوفّر تطبيقات أخرى قيد التشغيل (لم يتم تثبيتها من خلال Play أو تحميلها مسبقًا على الجهاز) قد تعرض محتوى على السطح في التطبيق الذي يطلب الإذن.
فارغ (قيمة فارغة) لا يتم تقييم احتمالية اختراق التطبيق في حال عدم استيفاء أحد المتطلّبات الضرورية. في هذه الحالة، يكون الحقل appAccessRiskVerdict فارغًا. وقد يحدث ذلك لعدة أسباب، بما في ذلك ما يلي:
  • الجهاز غير موثوق بالقدر الكافي
  • شكل الجهاز ليس هاتفًا أو جهازًا لوحيًا أو جهازًا قابلاً للطي.
  • لا يعمل الجهاز بالإصدار 6 من نظام التشغيل Android (المستوى 23 لواجهة برمجة التطبيقات) أو إصدار أحدث.
  • لا يتعرّف Google Play على إصدار التطبيق المثبّت على الجهاز
  • إصدار "متجر Google Play" على الجهاز قديم.
  • الألعاب فقط: لا يملك حساب المستخدم ترخيصًا للعبة على Play.
  • تم استخدام طلب عادي مع المَعلمة verdictOptOut.
  • تم استخدام طلب عادي مع إصدار من مكتبة Play Integrity API لا يتيح بعد ميزة "احتمالية اختراق التطبيق" للطلبات العادية.
بيان "Play للحماية" NO_ISSUES تكون خدمة "Play للحماية" مفعّلة ولم ترصد أي مشاكل في التطبيقات على الجهاز.
NO_DATA تم تفعيل خدمة "Play للحماية" ولكن لم يتم إجراء أي عملية فحص حتى الآن. ربما تمت إعادة ضبط الجهاز أو تطبيق "متجر Play" مؤخرًا.
POSSIBLE_RISK تم إيقاف "Play للحماية".
MEDIUM_RISK تكون خدمة "Play للحماية" مفعّلة وقد عثرت على تطبيقات قد تكون ضارة ومثبّتة على الجهاز.
HIGH_RISK تكون خدمة "Play للحماية" مفعَّلة وقد رصدت تطبيقات خطيرة مثبّتة على الجهاز.
UNEVALUATED لم يتم تقييم بيان "Play للحماية". ولم يتم استيفاء أحد المتطلّبات الضرورية، مثلاً أن يكون الجهاز غير موثوق بالقدر الكافي.

ضبط إعدادات الطلبات الكلاسيكية (اختياري)

تخطَّ هذا القسم إذا كنت تخطّط لإجراء طلبات عادية من واجهة برمجة التطبيقات فقط.

عند إرسال طلبات كلاسيكية، تدير خوادم Google Play تلقائيًا عملية تشفير الردود التي يستخدمها تطبيقك عند التفاعل مع Play Integrity API. مع أنّنا ننصحك باستخدام هذا الخيار التلقائي، يمكنك أيضًا اختيار إدارة مفاتيح تشفير الردود وتنزيلها باتّباع التعليمات أدناه.

السماح لشركة Google بإدارة تشفير الردود (الإعداد التلقائي والمُقترَح)

لحماية أمان تطبيقك، يُنصح بالسماح لـ Google بإنشاء مفاتيح تشفير الردود وإدارتها. وسيطلب خادم الخلفية من خادم Google Play أن يفك تشفير الردود.

إدارة وتنزيل مفاتيحي الخاصة بتشفير الردود

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

يُرجى العِلم أنّه يجب عدم فك تشفير الرمز المميّز المستلَم أو التحقّق منه من داخل تطبيق العميل، ويجب عدم عرض أي مفاتيح فك تشفير لتطبيق العميل.

قبل تغيير استراتيجية إدارة تشفير الردود في Play Console، تأكَّد من إعداد الخادم بشكل صحيح لفك تشفير رموز التحقّق من السلامة والتحقّق منها على خوادم Google Play لتجنُّب حدوث أي انقطاع.

التبديل بين مفاتيح تشفير الردود التي تديرها Google وتلك التي تديرها بنفسك

إذا كانت Google تدير حاليًا عملية تشفير الردود، وأردت التبديل إلى إدارة مفاتيح تشفير الردود وتنزيلها بنفسك، اتّبِع الخطوات التالية:

  1. سجِّل الدخول إلى Play Console.
  2. اختَر تطبيقًا يستخدم واجهة برمجة التطبيقات Play Integrity API.
  3. في قسم الإصدار من القائمة اليمنى، انتقِل إلى سلامة التطبيق.
  4. بجانب Play Integrity API، انقر على الإعدادات.
  5. في قسم الطلبات الكلاسيكية من الصفحة، انقر على تعديل بجانب تشفير الردود.
  6. في النافذة التي تظهر، انقر على إدارة وتنزيل مفاتيحي الخاصة بتشفير الردود.
  7. اتّبِع التعليمات لتحميل مفتاح عام.
  8. بعد أن تشير النافذة إلى أنّ عملية التحميل تمت بنجاح، انقر على حفظ وسيتم تلقائيًا تنزيل المفاتيح المشفّرة.
  9. غيِّر منطق الخادم لفك تشفير رموز التحقّق من السلامة والتحقّق منها محليًا في بيئة الخادم الآمنة الخاصة بك باستخدام مفاتيح تشفير الردود.
  10. (اختياري) عند إدارة مفاتيح تشفير الردود بنفسك، يمكن لتطبيقك الرجوع إلى خادم Google Play لفك تشفير الرد والتحقّق منه.

إذا كنت تدير مفاتيح تشفير الردود بنفسك وأردت أن تتولّى Google إدارة عملية تشفير الردود، اتّبِع الخطوات التالية:

  1. غيِّر منطق الخادم بحيث يتم فك التشفير والتحقّق من الصحة على خوادم Google فقط.
  2. سجِّل الدخول إلى Play Console.
  3. اختَر تطبيقًا يستخدم واجهة برمجة التطبيقات Play Integrity API.
  4. في قسم الإصدار من القائمة اليمنى، انتقِل إلى سلامة التطبيق.
  5. بجانب Play Integrity API، انقر على الإعدادات.
  6. في قسم الطلبات الكلاسيكية من الصفحة، انقر على تعديل بجانب تشفير الردود.
  7. في النافذة التي تظهر، انقر على السماح لشركة Google بإدارة تشفير مفاتيحي الخاصة بتشفير الردود (خيار مُقترَح).
  8. انقر على حفظ التغييرات.