הנתונים הסטטיסטיים של השחקן במשחקי Android

ה-API של הנתונים הסטטיסטיים של השחקנים מאפשר להתאים את חוויות המשחק לפלחים ספציפיים של ואת השלבים השונים במחזור החיים של השחקנים. אפשר ליצור לכל פלח שחקן, בהתאם להתקדמות של השחקנים, להוצאה, מעוררות עניין. לדוגמה, תוכלו להשתמש ב-API הזה כדי לבצע פעולות יזומות כדי לעודד שחקן פחות פעיל לעודד מעורבות מחדש במשחק, למשל הצגה וקידום של פריטים חדשים במשחק כשהשחקן נכנס לחשבון.

במדריך הזה מוסבר איך להשתמש ב-API של הנתונים הסטטיסטיים של השחקנים במשחקים שבהם נעשה שימוש ב- Google Play Games Services תוכלו למצוא את ממשקי ה-API com.google.android.gms.games.stats ו-com.google.android.gms.games חבילות.

לפני שמתחילים

לפני שמתחילים להשתמש ב-API של הנתונים הסטטיסטיים של הנגן:

קבלת נתוני הלקוח של הנתונים הסטטיסטיים של הנגן

כדי להתחיל להשתמש ב-API של הנתונים הסטטיסטיים של השחקנים, המשחק שלך צריך קודם לקבל אובייקט PlayerStatsClient. אפשר לעשות זאת באמצעות קריאה ל Games.getPlayerStatsClient() ומעבירים את פעילות ואת ה-GoogleSignInAccount של הנגן הנוכחי. כדי ללמוד כיצד: לאחזר את פרטי חשבון השחקן, כניסה לחשבון במשחקי Android.

מידע בסיסי על הנתונים הסטטיסטיים של הנגן

אפשר להשתמש בממשק ה-API של הנתונים הסטטיסטיים של השחקנים כדי לאחזר נתונים על המשחק של שחקן מסוים פעילות. סוגי נתוני הנגן שניתן לאחזר כוללים:

  • משך סשן ממוצע: משך הסשן הממוצע של הנגן דקות. משך הסשן נקבע לפי שעת הכניסה של השחקן שירותי Google Play Games.

  • ימים מאז ההפעלה האחרונה: מספר הימים המשוער שחלפו מאז השחקן שיחקת לאחרונה.

  • מספר הרכישות: המספר המשוער של רכישות מתוך האפליקציה עבור נגן.

  • מספר סשנים: המספר המשוער של סשנים של הנגן. סשנים נקבעים לפי מספר הפעמים ששחקן נכנס אליהם שירותי Google Play Games.

  • אחוזון הסשנים: האחוזון המשוער של הסשנים הנגן, ניתן כערך עשרוני בין 0 ל-1 כולל. הערך הזה מציין כמה הסשנים של השחקן הנוכחי בהשוואה לשאר השחקן הבסיס. מספרים גבוהים יותר מצביעים על כך שהשחקן שיחק ביותר סשנים.

  • אחוזון ההוצאות: אחוזון ההוצאות המשוער של הנגן, נתון כערך עשרוני בין 0 ל-1 כולל. הערך הזה מציין הוציא השחקן הנוכחי בהשוואה לשאר השחקן הבסיס. מספרים גבוהים יותר מצביעים על כך שהשחקן הוציא יותר כסף.

הסוגים הבאים של נתוני שחקנים הוצאו משימוש ומחזירים תמיד ערך לא מוגדר קבוע:

  • סבירות לנטישה: החיזוי שלפיה השחקן ינטש ביום הבא, נתון כערך עשרוני בין 0 (הסתברות נמוכה של נטישה) ל-1 (הסתברות גבוהה לנטישה) כולל. נטישה מוגדרת כ-7 ימים של חוסר פעילות.
  • הסתברות להוצאה: ההסתברות המשוערת של השחקן בחירה להוציא במשחק הזה, מצוין כערך עשרוני בין 0 (נמוך הסתברות להוצאה) ל-1 (הסתברות גבוהה להוצאה) כולל.
  • סה"כ הוצאות ב-28 הימים הבאים: אומדן של סך כל השחקנים הצפויים הוצאות במהלך 28 הימים הבאים במשחק הזה.
  • הסתברות גבוהה להוצאה: ההסתברות המשוערת כאשר מעל שחקן יוציא סכום שהוא ב-28 הימים הבאים אחוזון או יותר מתוך בסיס השחקנים של המשחק הזה. הנתון הזה מוצג כמספר עשרוני ערך בין 0 (הסתברות נמוכה להפוך להוצאה גבוהה) ל-1 (גבוה שיש סבירות גבוהה שיהפכו להוצאה גבוהה).

מאחזר נתונים סטטיסטיים של שחקנים

כדי לאחזר נתונים סטטיסטיים של שחקן לגבי הנגן שמחובר כרגע, יש לפעול לפי שלבים:

  1. מפעילים את השיטה PlayerStatsClient.loadPlayerStats().
  2. אם השיחה בוצעה בהצלחה, Google Play Games Services יחזיר אובייקט Task טוען באופן אסינכרוני אובייקט PlayerStats. צריך להשתמש בשיטות של האובייקט הזה כדי לאחזר נתונים לגבי הפעילויות של השחקן שמחובר לחשבון באפליקציה.

לדוגמה:

public void checkPlayerStats() {
  Games.getPlayerStatsClient(this, GoogleSignIn.getLastSignedInAccount(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());
          }
        }
      });
}

טיפים לשימוש בנתונים הסטטיסטיים של הנגן

ממשק ה-API של הנתונים הסטטיסטיים של Play מאפשר לכם לזהות בקלות סוגים שונים של נגנים, בהתבסס על את מעורבות המשתמשים וההוצאות שלהם, וליישם אסטרטגיות מתאימות לשפר את חוויית המשחק שלהם.

בטבלה הבאה מפורטים כמה פלחי שחקנים לדוגמה והמלצות אסטרטגיות ליצירת מעורבות:

פלח שחקנים אסטרטגיית מעורבות
שחקנים קבועים עם מספר גבוה של סשנים והוצאה טובה אחוזון, אך לא שיחקו במשך השבוע האחרון או יותר.
  • שלחו התראה על הנחה או בונוס מיוחד זמינים כשהם יחזרו למשחק.
  • הצגה של הודעת פתיחה חוזרת שמאשרת כי מדובר במראה מרשים על הישגים, ולהעניק תג שנועד לעודד להחזיר את ההפעלה.
שחקנים עם רמת מעורבות גבוהה באחוזון הוצאות נמוך.
  • מתאימים בונוסים כדי לעודד אותם להזמין חברים להתקין את המשחק ולהצטרף אליו. הגישה הזאת מבוססת על הפגינו הנאה מהמשחק כדי לגייס שחקנים חדשים.
שחקנים עם הוצאות גבוהות ומראים סימנים לכך שהגיעו לשיא ולהתחלתו בתדירות נמוכה יותר.
  • להתאים בונוסים כדי להגביר את ההתעניינות שלהם, למשל: שמציעות כלים בעלי ערך גבוה, כלים לטווח קצר, כלי נשק או הנחות.
  • בפעם הבאה שהנגן ייכנס לחשבון, יוצג סרטון שמפנה את השחקנים אותם לתכונות קהילתיות, כמו התקפות של השבט, יוצרים אינטראקציות תכופות יותר וארוכות יותר.
שחקנים עם סבירות גבוהה מאוד או נמוכה מאוד להוצאה.
  • 'לא סביר להוצאה': מתן אפשרות לצפות בפרסומת וידאו. הצגת פריטים לרכישה במחיר נמוך יותר.
  • סבירות לביצוע רכישה: מפנים את הלקוחות לחנות בתוך המשחק בשלב מוקדם ולספק מבצעים מיוחדים כדי לעודד אותם לקנות.