این راهنما به شما نشان می دهد که چگونه از API آمار پخش کننده برای خدمات بازی های Google Play استفاده کنید. میتوانید از API آمار بازیکن برای بازیابی اطلاعات مربوط به فعالیت در بازی بازیکن استفاده کنید.
API آمار بازیکن به شما امکان می دهد تجربیات بازی را برای بخش های خاصی از بازیکنان و مراحل مختلف چرخه زندگی بازیکن تنظیم کنید. شما می توانید بر اساس نحوه پیشرفت، هزینه و تعامل بازیکنان، تجربیات مناسبی برای هر بخش بازیکن بسازید. به عنوان مثال، میتوانید از این API برای انجام اقدامات پیشگیرانه برای تشویق بازیکن کمتر فعال برای تعامل مجدد با بازی خود استفاده کنید، مانند نمایش و تبلیغ موارد جدید در بازی هنگام ورود بازیکن.
API ها را می توان در بسته های com.google.android.gms.games.stats
و com.google.android.gms.games
پیدا کرد.
قبل از شروع
قبل از شروع به استفاده از API آمار پخش کننده:
- نمونه کد را دانلود و بررسی کنید.
- با توصیه های شرح داده شده در چک لیست کیفیت آشنا شوید.
مشتری آمار بازیکن را دریافت کنید
برای شروع استفاده از Player stats API، بازی شما ابتدا باید یک شی PlayerStatsClient
دریافت کند. شما می توانید این کار را با فراخوانی متد PlayerStatsClient.getPlayersClient()
و عبور از اکتیویتی انجام دهید.
کلاس PlayerStatsClient
از کلاس Task
Google Play Services برای برگرداندن نتایج به صورت ناهمزمان استفاده می کند. برای کسب اطلاعات بیشتر در مورد استفاده از وظایف برای مدیریت کار رشتهای، به راهنمای برنامهنویس Tasks API مراجعه کنید.
اصول اولیه آمار بازیکن
میتوانید از API آمار بازیکن برای بازیابی اطلاعات مربوط به فعالیت در بازی بازیکن استفاده کنید. انواع داده های پخش کننده ای که می توانید بازیابی کنید عبارتند از:
میانگین طول جلسه : میانگین طول جلسه بازیکن بر حسب دقیقه. طول جلسه با زمانی تعیین میشود که بازیکن به سیستم خدمات بازیهای Google Play وارد میشود.
روزهای پس از آخرین بازی : تعداد تقریبی روزهای پس از آخرین بازی بازیکن.
تعداد خریدها : تعداد تقریبی خریدهای درون برنامه ای برای بازیکن.
تعداد جلسات : تعداد تقریبی جلسات بازیکن. جلسات بر اساس تعداد دفعاتی که بازیکن وارد سرویسهای بازیهای Google Play میشود تعیین میشود.
صدک جلسه : تقریبی صدک جلسات برای بازیکن، که به صورت اعشاری بین 0 تا 1 شامل می شود. این مقدار نشان می دهد که بازیکن فعلی در مقایسه با بقیه بازیکنان این بازی چند جلسه بازی کرده است. اعداد بالاتر نشان می دهد که این بازیکن جلسات بیشتری بازی کرده است.
صدک خرج کردن : صدک هزینه تقریبی بازیکن که به صورت اعشاری بین 0 تا 1 شامل می شود. این مقدار نشان می دهد که بازیکن فعلی در مقایسه با بقیه بازیکنان این بازی چقدر هزینه کرده است. اعداد بالاتر نشان می دهد که این بازیکن بیشتر خرج کرده است.
انواع زیر از داده های پخش کننده منسوخ شده اند و همیشه یک مقدار تنظیم نشده را ثابت می کنند:
- احتمال ریزش : پیشبینی اینکه آیا یک بازیکن در روز بعد ریزش میکند یا نه، که به عنوان یک مقدار اعشاری بین 0 (احتمال ریزش کم) تا 1 (احتمال ریزش زیاد) شامل میشود. Churn به عنوان 7 روز عدم فعالیت تعریف می شود.
- احتمال خرج کردن : احتمال تقریبی بازیکنی که برای خرج کردن در این بازی انتخاب می کند، به عنوان یک مقدار اعشاری بین 0 (احتمال خرج کم) تا 1 (احتمال خرج بالا) شامل می شود.
- مجموع خرج کردن 28 روز آینده : کل تقریبی کل هزینه مورد انتظار بازیکن در 28 روز آینده در این بازی.
- احتمال خرج زیاد : احتمال تقریبی این است که در 28 روز آینده یک بازیکن مبلغی را خرج کند که در صدک 95 یا بالاتر از پایه بازیکنان این بازی است. این به عنوان یک مقدار اعشاری بین 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 به شما امکان میدهد انواع مختلفی از بازیکنان را بر اساس درگیری و رفتار خرجکردهشان شناسایی کنید و استراتژیهای مناسب را برای بهبود تجربه بازیشان اعمال کنید.
جدول زیر چند نمونه از بخشهای بازیکن و استراتژیهای تعامل پیشنهادی را فهرست میکند:
بخش بازیکن | استراتژی تعامل |
---|---|
بازیکنان مکرر با تعداد جلسات بالا و درصد خرج خوب، اما در هفته گذشته یا بیشتر بازی نکرده اند. |
|
بازیکنان بسیار درگیر در صدک هزینه پایین. |
|
بازیکنانی که هزینه بالایی دارند و نشانههایی از رسیدن به اوج و شروع کمتر بازی را نشان میدهند. |
|
بازیکنانی با احتمال خرج بسیار بالا یا بسیار کم. |
|