تتيح لك واجهة برمجة التطبيقات لإحصاءات اللاعبين تخصيص تجارب الألعاب لشرائح محدّدة من اللاعبين والمراحل المختلفة من دورة حياة اللاعب. يمكنك إنشاء تجارب مخصّصة لكل شريحة من شرائح اللاعبين استنادًا إلى مستوى تقدّم اللاعبين وإنفاقهم وتفاعلهم. على سبيل المثال، يمكنك استخدام واجهة برمجة التطبيقات هذه لاتخاذ إجراءات استباقية تشجيع اللاعب الأقل نشاطًا على إعادة التفاعل مع لعبتك، مثلاً عن طريق عرض عناصر جديدة داخل اللعبة والترويج لها عندما يسجّل اللاعب الدخول.
يوضِّح لك هذا الدليل كيفية استخدام واجهة برمجة التطبيقات لإحصاءات اللاعبين في الألعاب باستخدام
"خدمات ألعاب Google Play" يمكن العثور على واجهات برمجة التطبيقات في
com.google.android.gms.games.stats
وcom.google.android.gms.games
حزم.
قبل البدء
قبل البدء في استخدام واجهة برمجة تطبيقات إحصاءات المشغّل، يُرجى اتّباع الخطوات التالية:
- عليك تنزيل ومراجعة نموذج التعليمات البرمجية.
- اطّلع على الاقتراحات الموضحة في قائمة التحقّق من الجودة:
جارٍ الحصول على عميل إحصاءات اللاعب
لبدء استخدام واجهة برمجة تطبيقات إحصاءات اللاعبين، يجب أن تحصل لعبتك أولاً على
PlayerStatsClient
. يمكنك القيام بذلك عن طريق استدعاء
Games.getPlayerStatsClient()
وتمرير
الأخرى.
أساسيات "إحصاءات اللاعبين"
يمكنك استخدام واجهة برمجة تطبيقات إحصاءات اللاعبين لاسترداد بيانات عن نشاط اللاعب داخل اللعبة. تشمل أنواع بيانات اللاعب التي يمكنك استردادها ما يلي:
متوسط مدة الجلسة: متوسط مدة جلسة المشغّل بالكلمات الدقيقة يتم تحديد مدة الجلسة حسب الوقت الذي يكون فيه اللاعب مسجِّلاً الدخول إلى "خدمات ألعاب Google Play".
الأيام المنقضية منذ آخر مرة تم فيها تشغيل المشغّل: العدد التقريبي للأيام التي مرّت منذ أن تم تشغيل المشغّل تم تشغيلها آخر مرة.
عدد عمليات الشراء: العدد التقريبي لعمليات الشراء داخل التطبيق لاعب.
عدد الجلسات: العدد التقريبي لجلسات اللاعب يتم تحديد الجلسات من خلال عدد المرات التي يسجّل فيها اللاعب الدخول إلى خدمات ألعاب Google Play.
النسبة المئوية للجلسة: القيمة التقريبية للجلسات بالنسبة المئوية لاعب، يتم تحديده كقيمة عشرية تتراوح من 0 إلى 1 ضمنًا. تشير هذه القيمة إلى عدد جلسات اللعب التي أجراها اللاعب الحالي مقارنةً بباقي قاعدة مستخدمي هذه اللعبة. تشير الأرقام الأعلى إلى أنّ هذا اللاعب قد لعب المزيد من الجلسات.
النسبة المئوية للإنفاق: النسبة المئوية التقريبية للإنفاق الخاصة باللاعب، مقدَّمة كقيمة عشرية تتراوح بين 0 و1. تشير هذه القيمة إلى المبلغ الذي ينفقه اللاعب الحالي مقارنةً بباقي قاعدة مستخدمي هذه اللعبة. تشير الأرقام الأكبر إلى أنّ هذا اللاعب قد أنفق أكثر.
يتم إيقاف الأنواع التالية من بيانات اللاعب نهائيًا ويتم عرضها دائمًا بدون ضبط. ثابت القيمة:
- احتمالية إيقاف الاستخدام: التنبؤ بما إذا كان أحد اللاعبين سينسحب في اليوم التالي، ووفقًا لقيمة عشرية تتراوح بين 0 (احتمال منخفض إلى 1 (احتمالية عالية لانسحاب أحد العملاء) ضمنًا. يتم تعريف إيقاف الاستخدام على أنّه 7 أيام من عدم النشاط.
- احتمالية الإنفاق: الاحتمالية التقريبية لاختيار اللاعب الإنفاق في هذه اللعبة، ويتم تقديمها كقيمة عشرية تتراوح بين 0 (احتمالية منخفضة للإنفاق) و1 (احتمالية عالية للإنفاق) شاملة.
- إجمالي الإنفاق في الأيام الـ 28 القادمة: الإجمالي التقريبي للاعبين المتوقّعين الإنفاق خلال الأيام الثمانية والعشرين المقبلة في هذه اللعبة.
- احتمالية الإنفاق العالي: الاحتمالية التقريبية بأن ينفق أحد اللاعبين مبلغًا يمثّل 95% أو أكثر من إجمالي الإنفاق في قاعدة مستخدمي هذه اللعبة خلال الـ 28 يومًا القادمة. يتم التعبير عن ذلك ككسر عشري القيمة بين 0 (احتمال منخفض أن تصبح من ذوي الإنفاق المرتفع) إلى 1 (مرتفعة احتمالية أن تصبح من ذوي الإنفاق مرتفعًا).
جارٍ استرداد بيانات إحصاءات اللاعب
لاسترداد بيانات إحصاءات اللاعب الذي سجّل الدخول حاليًا، اتّبِع الخطوات التالية:
- يمكنك استدعاء الطريقة
PlayerStatsClient.loadPlayerStats()
. - إذا كانت المكالمة ناجحة، تُرجع "خدمات ألعاب Google Play" عنصرًا
Task
الذي يحمِّل عنصرPlayerStats
بشكل غير متزامن. استخدام طرق هذا الكائن لاسترداد بيانات عن أنشطة اللاعب الذي سجّل الدخول إلى التطبيق
وفي ما يلي مثال لذلك:
public void checkPlayerStats() { PlayGames.getPlayerStatsClient(this) .loadPlayerStats(true) .addOnCompleteListener(new OnCompleteListener<AnnotatedData<PlayerStats>>() { @Override public void onComplete(@NonNull Task<AnnotatedData<PlayerStats>> task) { if (task.isSuccessful()) { // Check for cached data. if (task.getResult().isStale()) { Log.d(TAG, "using cached data"); } PlayerStats stats = task.getResult().get(); if (stats != null) { Log.d(TAG, "Player stats loaded"); if (stats.getDaysSinceLastPlayed() > 7) { Log.d(TAG, "It's been longer than a week"); } if (stats.getNumberOfSessions() > 1000) { Log.d(TAG, "Veteran player"); } if (stats.getChurnProbability() == 1) { Log.d(TAG, "Player is at high risk of churn"); } } } else { int status = CommonStatusCodes.DEVELOPER_ERROR; if (task.getException() instanceof ApiException) { status = ((ApiException) task.getException()).getStatusCode(); } Log.d(TAG, "Failed to fetch Stats Data status: " + status + ": " + task.getException()); } } }); }
نصائح لاستخدام بيانات "إحصاءات اللاعبين"
تتيح لك واجهة برمجة التطبيقات Play Stats API تحديد أنواع اللاعبين المختلفة بسهولة استنادًا إلى سلوك التفاعل والإنفاق، وتطبيق الاستراتيجيات المناسبة لتحسين تجربتهم في اللعبة.
يسرد الجدول التالي بعض الأمثلة على شرائح اللاعبين واستراتيجيات التفاعل المقترَحة:
شريحة اللاعب | استراتيجية التفاعل |
---|---|
اللاعبون المتكرّرون الذين سجّلوا عددًا كبيرًا من الجلسات ونسبة مئوية جيدة للإنفاق ، ولكن لم يلعبوا خلال الأسبوع الماضي أو أكثر |
|
اللاعبون المتفاعلون بشكل كبير في الشريحة المئوية ذات الإنفاق المنخفض |
|
اللاعبون الذين ينفقون بكثافة ويظهرون علامات على بلوغهم ذروة نشاطهم وبدء اللعب بمعدل أقل |
|
اللاعبون الذين لديهم احتمالية إنفاق عالية جدًا أو منخفضة جدًا |
|