آمار بازیکنان در بازی های اندروید

API آمار بازیکن به شما امکان می دهد تجربیات بازی را برای بخش های خاصی از بازیکنان و مراحل مختلف چرخه زندگی بازیکن تنظیم کنید. شما می توانید بر اساس نحوه پیشرفت، هزینه و تعامل بازیکنان، تجربیات مناسبی برای هر بخش بازیکن بسازید. به عنوان مثال، می‌توانید از این API برای انجام اقدامات پیشگیرانه برای تشویق بازیکن کمتر فعال برای تعامل مجدد با بازی خود استفاده کنید، مانند نمایش و تبلیغ موارد جدید در بازی هنگام ورود بازیکن.

این راهنما به شما نشان می‌دهد که چگونه از API آمار بازیکن در بازی‌هایی که از خدمات بازی‌های Google Play استفاده می‌کنند استفاده کنید. API ها را می توان در بسته های com.google.android.gms.games.stats و com.google.android.gms.games پیدا کرد.

قبل از شروع

قبل از شروع به استفاده از API آمار پخش کننده:

دریافت مشتری آمار بازیکن

برای شروع استفاده از Player stats API، بازی شما ابتدا باید یک شی PlayerStatsClient دریافت کند. شما می توانید این کار را با فراخوانی متد Games.getPlayerStatsClient() و عبور از اکتیویتی انجام دهید.

اصول اولیه آمار بازیکن

می‌توانید از API آمار بازیکن برای بازیابی اطلاعات مربوط به فعالیت در بازی بازیکن استفاده کنید. انواع داده های پخش کننده ای که می توانید بازیابی کنید عبارتند از:

  • میانگین طول جلسه : میانگین طول جلسه بازیکن بر حسب دقیقه. طول جلسه با زمانی تعیین می‌شود که بازیکن به سیستم خدمات بازی‌های Google Play وارد می‌شود.

  • روزهای پس از آخرین بازی : تعداد تقریبی روزهای پس از آخرین بازی بازیکن.

  • تعداد خریدها : تعداد تقریبی خریدهای درون برنامه ای برای بازیکن.

  • تعداد جلسات : تعداد تقریبی جلسات بازیکن. جلسات بر اساس تعداد دفعاتی که بازیکن وارد سرویس‌های بازی‌های Google Play می‌شود تعیین می‌شود.

  • صدک جلسه : تقریبی صدک جلسات برای بازیکن، که به صورت اعشاری بین 0 تا 1 شامل می شود. این مقدار نشان می دهد که بازیکن فعلی در مقایسه با بقیه بازیکنان این بازی چند جلسه بازی کرده است. اعداد بالاتر نشان می دهد که این بازیکن جلسات بیشتری بازی کرده است.

  • صدک خرج کردن : صدک هزینه تقریبی بازیکن که به صورت اعشاری بین 0 تا 1 شامل می شود. این مقدار نشان می دهد که بازیکن فعلی در مقایسه با بقیه بازیکنان این بازی چقدر هزینه کرده است. اعداد بالاتر نشان می دهد که این بازیکن بیشتر خرج کرده است.

انواع زیر از داده های پخش کننده منسوخ شده اند و همیشه یک مقدار تنظیم نشده را ثابت می کنند:

  • احتمال ریزش : پیش‌بینی اینکه آیا یک بازیکن در روز بعد ریزش می‌کند یا نه، که به عنوان یک مقدار اعشاری بین 0 (احتمال ریزش کم) تا 1 (احتمال ریزش زیاد) شامل می‌شود. Churn به عنوان 7 روز عدم فعالیت تعریف می شود.
  • احتمال خرج کردن : احتمال تقریبی بازیکنی که برای خرج کردن در این بازی انتخاب می کند، به عنوان یک مقدار اعشاری بین 0 (احتمال خرج کم) تا 1 (احتمال خرج بالا) شامل می شود.
  • مجموع خرج کردن 28 روز آینده : کل تقریبی کل هزینه مورد انتظار بازیکن در 28 روز آینده در این بازی.
  • احتمال خرج زیاد : احتمال تقریبی این است که در 28 روز آینده یک بازیکن مبلغی را خرج کند که در صدک 95 یا بالاتر از پایه بازیکنان این بازی است. این به عنوان یک مقدار اعشاری بین 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());
          }
        }
      });
}

نکاتی برای استفاده از داده های Player Stats

Play Stats API به شما این امکان را می دهد که انواع مختلف بازیکنان را بر اساس درگیری و رفتار خرج کردن آنها به راحتی شناسایی کنید و استراتژی های مناسب را برای بهبود تجربه بازی آنها اعمال کنید.

جدول زیر چند نمونه از بخش‌های بازیکن و استراتژی‌های تعامل پیشنهادی را فهرست می‌کند:

بخش بازیکن استراتژی تعامل
بازیکنان مکرر با تعداد جلسات بالا و درصد خرج خوب، اما در هفته گذشته یا بیشتر بازی نکرده اند.
  • یک اعلان در مورد تخفیف یا جایزه ویژه موجود پس از بازگشت آنها به بازی ارسال کنید.
  • یک پیام خوش آمدگویی نشان دهید که دستاوردهای چشمگیر را تأیید می کند، و نشانی را که برای تشویق بازی برگشت طراحی شده است، اعطا کنید.
بازیکنان بسیار درگیر در صدک هزینه پایین.
  • جوایز خیاطی کنید تا آنها را تشویق کنید تا دوستان خود را برای نصب و پیوستن به بازی شما دعوت کنند. این رویکرد مبتنی بر لذت نشان داده بازیکن از بازی برای جذب بازیکنان جدید است.
بازیکنانی که هزینه بالایی دارند و نشانه‌هایی از رسیدن به اوج و شروع کمتر بازی را نشان می‌دهند.
  • پاداش‌ها را برای تازه کردن علاقه‌شان، از جمله با ارائه ابزارها، سلاح‌ها یا تخفیف‌هایی با ارزش بالا و کوتاه مدت تنظیم کنید.
  • دفعه بعد که بازیکن وارد سیستم می‌شود، ویدیویی نشان دهید که او را به ویژگی‌های انجمن هدایت می‌کند، مانند حملات قبیله، که باعث تعامل بیشتر و طولانی‌تر می‌شود.
بازیکنانی با احتمال خرج بسیار بالا یا بسیار کم.
  • بعید است هزینه کنید: گزینه تماشای یک ویدیوی تبلیغاتی را بدهید. نمایش اقلام با قیمت پایین تر برای خرید.
  • احتمال خرج کردن: آنها را زودتر به فروشگاه درون بازی هدایت کنید و برای تشویق آنها به خرید، تبلیغات ویژه ارائه دهید.