إحصاءات اللاعبين لألعاب Android

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

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

يمكن العثور على واجهات برمجة التطبيقات في حزمتَي com.google.android.gms.games.stats وcom.google.android.gms.games.

قبل البدء

قبل البدء في استخدام واجهة برمجة التطبيقات لإحصاءات اللاعبين، يُرجى مراعاة ما يلي:

الحصول على برنامج إحصاءات اللاعبين

لبدء استخدام واجهة برمجة التطبيقات الخاصة بإحصاءات اللاعبين، يجب أن تحصل لعبتك أولاً على عنصر PlayerStatsClient. يمكنك إجراء ذلك من خلال استدعاء الطريقة PlayerStatsClient.getPlayersClient() وتمرير النشاط.

يستخدم الصف PlayerStatsClient الصف Task الخاص بخدمات Google Play لعرض النتائج بشكل غير متزامن. لمزيد من المعلومات حول استخدام المهام لإدارة العمل المتسلسل، يُرجى الاطّلاع على دليل المطوّرين لواجهة Tasks API.

أساسيات إحصاءات اللاعب

يمكنك استخدام واجهة برمجة التطبيقات لإحصاءات اللاعبين لاسترداد بيانات حول نشاط اللاعب داخل اللعبة. تشمل أنواع بيانات اللاعبين التي يمكنك استردادها ما يلي:

  • متوسط مدة الجلسة: متوسط مدة جلسة اللاعب بالدقائق. يتم تحديد مدة الجلسة من خلال الوقت الذي يتم فيه إثبات هوية اللاعب من خلال "خدمات ألعاب Google Play".

  • عدد الأيام منذ آخر لعب: عدد الأيام التقريبي منذ آخر مرة لعب فيها اللاعب.

  • عدد عمليات الشراء: العدد التقريبي لعمليات الشراء داخل التطبيق التي أجراها اللاعب.

  • عدد الجلسات: العدد التقريبي لجلسات اللاعب. يتم تحديد الجلسات من خلال عدد المرات التي تم فيها إثبات هوية اللاعب من خلال "خدمات ألعاب Google Play".

  • النسبة المئوية للجلسة: هي قيمة تقريبية للنسبة المئوية لجلسات اللاعب، ويتم عرضها كقيمة عشرية تتراوح بين 0 و1 شاملةً الحدّين. تشير هذه القيمة إلى عدد الجلسات التي لعبها اللاعب الحالي مقارنةً ببقية قاعدة اللاعبين في هذه اللعبة. تشير الأرقام الأعلى إلى أنّ هذا اللاعب قد لعب عددًا أكبر من الجلسات.

  • المعدّل المئوي للإنفاق: المعدّل المئوي التقريبي للإنفاق الذي أجراه اللاعب، ويتم عرضه كقيمة عشرية تتراوح بين 0 و1، بما في ذلك هذان الرقمَان. تشير هذه القيمة إلى المبلغ الذي أنفقه اللاعب الحالي مقارنةً ببقية قاعدة اللاعبين في هذه اللعبة. تشير الأرقام الأعلى إلى أنّ هذا اللاعب قد أنفق المزيد.

تم إيقاف أنواع بيانات اللاعبين التالية نهائيًا، وهي تعرض دائمًا قيمة ثابتة غير مضبوطة:

  • احتمالية إيقاف الاستخدام: هي توقّع ما إذا كان أحد اللاعبين سيوقف الاستخدام في اليوم التالي، ويتم عرضها كقيمة عشرية تتراوح بين 0 (احتمالية منخفضة لإيقاف الاستخدام) و1 (احتمالية عالية لإيقاف الاستخدام) ضِمنًا. يتم تعريف معدّل التوقّف عن الاستخدام بأنّه 7 أيام من عدم النشاط.
  • احتمالية الإنفاق: هي الاحتمالية التقريبية لاختيار اللاعب الإنفاق في هذه اللعبة، ويتم عرضها كقيمة عشرية تتراوح بين 0 (احتمالية منخفضة للإنفاق) و1 (احتمالية عالية للإنفاق)، ضِمنًا.
  • إجمالي الإنفاق خلال الأيام الـ 28 المقبلة: إجمالي الإنفاق المقدَّر للاعبين خلال الأيام الـ 28 المقبلة في هذه اللعبة.
  • احتمالية الإنفاق المرتفع: هي الاحتمالية التقريبية لأن ينفق أحد اللاعبين خلال الـ 28 يومًا القادمة مبلغًا يقع في الشريحة المئوية الخامسة والتسعين أو أعلى من قاعدة اللاعبين في هذه اللعبة. يتم عرض هذه القيمة كرقم عشري يتراوح بين 0 (احتمالية منخفضة لأن يصبح المستخدم منفقًا كبيرًا) و1 (احتمالية عالية لأن يصبح المستخدم منفقًا كبيرًا).

استرداد بيانات إحصاءات اللاعب

لاسترداد بيانات إحصاءات اللاعب الذي تم إثبات هويته، اتّبِع الخطوات التالية:

  1. استدعِ الطريقة PlayerStatsClient.loadPlayerStats().

  2. في حال نجاح عملية الاستدعاء، ستعرض "خدمات ألعاب 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 تحديد أنواع مختلفة من اللاعبين استنادًا إلى مستوى تفاعلهم وسلوكهم في الإنفاق، وتطبيق الاستراتيجيات المناسبة لتحسين تجربة اللعب لديهم.

يعرض الجدول التالي بعض الأمثلة على شرائح اللاعبين واستراتيجيات التفاعل المقترَحة:

شريحة اللاعبين استراتيجية التفاعل
اللاعبون المتكرّرون الذين لديهم عدد كبير من الجلسات ونسبة إنفاق جيدة، ولكن لم يلعبوا خلال الأسبوع الماضي أو أكثر
  • إرسال إشعار بشأن خصم أو مكافأة خاصة متاحة عند عودتهم إلى اللعب
  • عرض رسالة ترحيبية تشير إلى الإنجازات الرائعة التي حقّقها اللاعب، ومنحه شارة مصمَّمة لتشجيعه على العودة إلى اللعب
اللاعبون الذين يتفاعلون بشكل كبير في شريحة مئوية منخفضة الإنفاق
  • خصِّص المكافآت لتحفيزهم على دعوة أصدقائهم لتثبيت لعبتك والانضمام إليها. يعتمد هذا الأسلوب على مدى استمتاع اللاعب باللعبة لجذب لاعبين جدد.
اللاعبون الذين ينفقون مبالغ كبيرة ويظهر عليهم أنّهم وصلوا إلى ذروة نشاطهم وبدأوا يلعبون بوتيرة أقل
  • خصِّص المكافآت لتجديد اهتمامهم، مثلاً من خلال تقديم أدوات أو أسلحة أو خصومات عالية القيمة ولفترة قصيرة.
  • في المرة التالية التي يتم فيها إثبات هوية اللاعب، اعرض فيديو يوجّهه إلى ميزات المنتدى، مثل هجمات العشائر، التي تشجّع على التفاعل بشكل أكثر تكرارًا ولمدة أطول.
اللاعبون الذين لديهم احتمال إنفاق مرتفع أو منخفض جدًا
  • من غير المرجّح أن ينفقوا أموالاً: امنحهم خيار مشاهدة فيديو إعلاني. عرض سلع بأسعار منخفضة للشراء
  • اللاعبون الذين من المرجّح أن ينفقوا أموالاً: وجِّههم إلى المتجر داخل اللعبة في وقت مبكر، وقدِّم لهم عروضًا ترويجية خاصة لتشجيعهم على الشراء.