باستخدام واجهة برمجة التطبيقات Play Age Signals API (الإصدار التجريبي)، أنت توافق على بنود الخدمة وتوافق على الالتزام بجميع سياسات المطوّرين على Google Play. لطلب حالة المستخدم والفئة العمرية، عليك إرسال طلب إلى واجهة برمجة التطبيقات من تطبيقك في وقت التشغيل. لا تعرض واجهة برمجة التطبيقات Play Age Signals API سوى بيانات المستخدمين المقيمين في المناطق التي يفرض القانون فيها على Play تقديم بيانات الفئة العمرية.
تعرض Play فئة عمرية استنادًا إلى الفئات العمرية المحدّدة حسب الاختصاص القضائي والمناطق السارية. تتراوح الأعمار التلقائية التي تعرضها واجهة برمجة التطبيقات في الولايات القضائية والمناطق السارية بين 0 و12 عامًا، ومن 13 إلى 15 عامًا، ومن 16 إلى 17 عامًا، و18 عامًا فأكثر، ولكن قد تتغيّر هذه الأعمار استنادًا إلى المتطلبات الإقليمية.
دمج واجهة برمجة التطبيقات Play Age Signals API في تطبيقك
لدمج واجهة Play Age Signals API في تطبيقك، أضِف التبعية التالية إلى ملف build.gradle
في تطبيقك:
implementation 'com.google.android.play:age-signals:0.0.1-beta01'
طلب إشارات الفئات العمرية
في ما يلي مثال على تقديم طلب للحصول على إشارات العمر:
// Create an instance of a manager
AgeSignalsManager ageSignalsManager =
AgeSignalsManagerFactory.create(ApplicationProvider.getApplicationContext());
// Request an age signals check
ageSignalsManager
.checkAgeSignals(AgeSignalsRequest.builder().build())
.addOnSuccessListener(
ageSignalsResult -> {
// Store the install ID for later...
String installId = ageSignalsResult.installId();
if (ageSignalsResult
.userStatus()
.equals(AgeSignalsVerificationStatus.SUPERVISED_APPROVAL_DENIED)) {
// Disallow access ...
} else {
// Do something else if the user is SUPERVISED, VERIFIED, etc.
}
});
يخزِّن Google Play إشارات العمر على الجهاز لكل مستخدم. عندما ينتقل مستخدم لديه حساب خاضع للإشراف على Google إلى فئة عمرية جديدة، يحدِّث Google Play تلقائيًا إشارات العمر المخزّنة مؤقتًا لهذا المستخدم خلال مدة تتراوح بين أسبوعَين و8 أسابيع بعد تاريخ ميلاده.
(اختياري) تلقّي فئات عمرية مخصّصة
تتضمّن الفئات العمرية التلقائية التي تعرضها واجهة برمجة التطبيقات في الولايات القضائية والمناطق السارية 0-12 و13-15 و16-17 و18 عامًا فأكثر، وقد تتغيّر هذه الفئات في المستقبل استنادًا إلى المتطلبات المحلية.
بدلاً من ذلك، لتخصيص الفئات العمرية وفقًا للحدّ الأدنى للعمر في تطبيقك، يمكنك تقديم هذه الفئات العمرية في صفحة إشارات العمر في Google Play Console. تعرض واجهة Age Signals API الفئات العمرية المخصّصة. على سبيل المثال، إذا قدّمت الحد الأدنى للأعمار 9 و15 و17 عامًا، سيقع المستخدم البالغ من العمر 14 عامًا ضمن الفئة العمرية من 10 إلى 15 عامًا. يجب ألا يقل الفارق العمري عن سنتَين ويمكن تغييره مرة واحدة سنويًا.
لتخصيص الفئات العمرية التي تعرضها واجهة Age Signals API، يمكنك تحديد الحدّ الأدنى للعمر في تطبيقك باتّباع الخطوات التالية:
- انتقِل إلى صفحة إشارات العمر في حسابك على Play Console.
- في علامة التبويب الحدّ الأدنى للعمر المسموح به لاستخدام التطبيق، أدخِل ما يصل إلى ثلاث فئات عمرية ضمن الحدّ الأدنى للعمر المسموح به لاستخدام تطبيقك.
- انقر على حفظ.
الردود المستندة إلى مؤشرات الفئات العمرية
يتضمّن الردّ من واجهة برمجة التطبيقات Play Age Signals API (إصدار تجريبي) الحقول والقيم التالية. وقد تتغيّر القيم. إذا كنت تريد الحصول على أحدث القيم، اطلب الحصول على ردّ من واجهة برمجة التطبيقات عند فتح تطبيقك. أنت المسؤول عن تقديم تجارب مناسبة للفئة العمرية باستخدام هذه الإشارات.
حقل الردّ | القيم | الوصف |
---|---|---|
userStatus |
تم التحقق | يجب أن يكون عمر المستخدم أكثر من 18 عامًا. أثبتت Google عمر المستخدم باستخدام طريقة معقولة تجاريًا، مثل مستند تعريف هوية صادر عن جهة حكومية أو بطاقة ائتمان أو تقدير العمر من خلال الوجه. |
SUPERVISED | يمتلك المستخدم حساب Google خاضعًا للإشراف يديره أحد الوالدَين الذي يحدّد عمره.
استخدِم الرمزين ageLower وageUpper لتحديد الفئة العمرية للمستخدم. |
|
SUPERVISED_APPROVAL_PENDING | لدى المستخدم حساب خاضع للإشراف على Google، ولم يوافق بعد الوالد المشرف على تغيير واحد أو أكثر من التغييرات المهمة المعلّقة.
استخدِم الرمزين ageLower وageUpper لتحديد الفئة العمرية للمستخدم.
استخدِم mostRecentApprovalDate لتحديد آخر تغيير مهم تمت الموافقة عليه. |
|
SUPERVISED_APPROVAL_DENIED | لدى المستخدم حساب خاضع للإشراف على Google، ورفض الوالد المشرف الموافقة على تغيير واحد أو أكثر من التغييرات المهمة.
استخدِم الرمزين ageLower وageUpper لتحديد الفئة العمرية للمستخدم.
استخدِم mostRecentApprovalDate لتحديد آخر تغيير مهم تمت الموافقة عليه. |
|
UNKNOWN | لم يتم إثبات هوية المستخدم أو إشراف أحد الوالدَين عليه في الولايات القضائية والمناطق المعنيّة. قد يكون هؤلاء المستخدمون أكبر من 18 عامًا أو أصغر. للحصول على إشارة العمر من Google Play، اطلب من المستخدم الانتقال إلى "متجر Play" لحلّ مشكلة حالته. | |
فارغ (قيمة فارغة) | تعرض جميع الحسابات الأخرى هذه القيمة. | |
ageLower |
من 0 إلى 18 | الحدّ الأدنى (شامل) للنطاق العمري للمستخدم الخاضع للإشراف.
استخدِم ageLower وageUpper لتحديد الفئة العمرية للمستخدم. |
فارغ (قيمة فارغة) |
userStatus غير معروف أو فارغ. |
|
ageUpper |
من 2 إلى 18 | الحدّ الأعلى (شامل) للنطاق العمري للمستخدم الخاضع للإشراف.
استخدِم ageLower وageUpper لتحديد الفئة العمرية للمستخدم. |
فارغ (قيمة فارغة) | إما أن يكون حساب userStatus خاضعًا للإشراف وأن يكون عمر المستخدم الذي أكده أحد الوالدَين أكبر من 18 عامًا.
أو أنّ قيمة userStatus تم التحقّق منها أو غير معروفة أو فارغة. |
|
mostRecentApprovalDate |
الطابع الزمني | effective from تاريخ آخر تغيير مهم تمت الموافقة عليه عند تثبيت تطبيق، يتم استخدام تاريخ آخر تغيير مهم قبل التثبيت. |
فارغ (قيمة فارغة) | إما أنّ userStatus يخضع للإشراف ولم يتم إرسال أي تغيير مهم.
أو أنّ قيمة userStatus تم التحقّق منها أو غير معروفة أو فارغة. |
|
installID |
معرّف أبجدي رقمي من إنشاء Play | معرّف يخصّ عمليات تثبيت التطبيقات التي يجريها المستخدمون الخاضعون للإشراف، ويتم تعيينه من قِبل Google Play، ويُستخدَم لإعلامك بحالات إبطال الموافقة على التطبيق. راجِع المستندات المتعلّقة بإبطال الموافقات على التطبيقات. |
فارغ (قيمة فارغة) | userStatus تم التحقّق منه أو غير معروف أو فارغ. |
التعامل مع رموز الأخطاء في واجهة برمجة التطبيقات
إذا أرسل تطبيقك طلبًا إلى واجهة برمجة التطبيقات Play Age Signals API (إصدار تجريبي) وتعذّر إكمال الطلب، سيتلقّى تطبيقك رمز خطأ. ويمكن أن تحدث هذه الأخطاء لأسباب مختلفة، مثل أنّ تطبيق "متجر Play" قديم.
استراتيجية إعادة المحاولة
في الحالات التي يكون فيها المستخدم في جلسة، ننصحك بتنفيذ استراتيجية إعادة المحاولة مع تحديد الحد الأقصى لعدد المحاولات كشرط للخروج، وذلك حتى لا يؤدي الخطأ إلى تعطيل تجربة المستخدم قدر الإمكان.
القيمة العددية لرمز الخطأ | رمز الخطأ | الوصف | قابلة لإعادة المحاولة |
---|---|---|---|
-1 | API_NOT_AVAILABLE | واجهة برمجة التطبيقات Play Age Signals API غير متاحة. قد يكون إصدار تطبيق "متجر Play" المثبَّت على الجهاز قديمًا. الحل المحتمل
|
نعم |
-2 | PLAY_STORE_NOT_FOUND | لم يتم العثور على تطبيق "متجر Play" على الجهاز. اطلب من المستخدم تثبيت "متجر Play" أو تفعيله. | نعم |
-3 | NETWORK_ERROR | لم يتم العثور على أي شبكة متاحة. اطلب من المستخدم التحقّق من توفّر اتصال. | نعم |
-4 | PLAY_SERVICES_NOT_FOUND | "خدمات Play" غير متاحة أو إصدارها قديم جدًا. اطلب من المستخدم تثبيت "خدمات Play" أو تحديثها أو تفعيلها. | نعم |
-5 | CANNOT_BIND_TO_SERVICE | تعذّر الربط بالخدمة في "متجر Play". قد يرجع ذلك إلى تثبيت إصدار قديم من "متجر Play" على الجهاز أو إلى امتلاء ذاكرة الجهاز. اطلب من المستخدم تحديث تطبيق "متجر Play". أعِد المحاولة باستخدام خوارزمية الرقود الأسي الثنائي. | نعم |
-6 | PLAY_STORE_VERSION_OUTDATED | يجب تحديث تطبيق "متجر Play". اطلب من المستخدم تحديث تطبيق "متجر Play". | نعم |
-7 | PLAY_SERVICES_VERSION_OUTDATED | يجب تحديث "خدمات Play". اطلب من المستخدم تحديث "خدمات Play". | نعم |
-8 | CLIENT_TRANSIENT_ERROR | حدث خطأ عابر في الجهاز العميل. تنفيذ استراتيجية إعادة المحاولة مع تحديد الحد الأقصى لعدد المحاولات كشرط للخروج إذا استمرّت المشكلة، اطلب من المستخدم إعادة المحاولة لاحقًا. | نعم |
-9 | APP_NOT_OWNED | لم يتم تثبيت التطبيق من خلال Google Play. اطلب من المستخدم الحصول على تطبيقك من Google Play. | لا |
-100 | INTERNAL_ERROR | حدث خطأ داخلي غير معروف. تنفيذ استراتيجية إعادة المحاولة مع تحديد الحد الأقصى لعدد المحاولات كشرط للخروج إذا استمرّت المشكلة، اطلب من المستخدم إعادة المحاولة لاحقًا. إذا تعذّر ذلك باستمرار، يُرجى التواصل مع فريق دعم المطوّرين على Google Play وتضمين Play Age Signals API في الموضوع، بالإضافة إلى أكبر قدر ممكن من التفاصيل الفنية (مثل تقرير عن الخطأ). | لا |