Bu kılavuzda, Google Play Games Hizmetleri için oyuncu istatistikleri API'sının nasıl kullanılacağı gösterilmektedir. Bir oyuncunun oyun içi etkinliğiyle ilgili verileri almak için oyuncu istatistikleri API'sini kullanabilirsiniz.
Oyuncu istatistikleri API'si, oyun deneyimlerini belirli oyuncu segmentlerine ve oyuncu yaşam döngüsünün farklı aşamalarına göre özelleştirmenizi sağlar. Oyuncuların ilerleme, harcama ve etkileşimde bulunma şekillerine göre her oyuncu segmenti için özel deneyimler oluşturabilirsiniz. Örneğin, daha az aktif bir oyuncuyu oyununuzla yeniden etkileşimde bulunmaya teşvik etmek amacıyla, oyuncu oturum açtığında yeni oyun içi öğeleri göstermek ve tanıtmak gibi proaktif işlemler için bu API'yi kullanabilirsiniz.
API'ler com.google.android.gms.games.stats
ve com.google.android.gms.games
paketlerinde bulunabilir.
Alabileceğiniz oynatıcı verisi türleri şunlardır:
Ortalama oturum uzunluğu: Oynatıcının dakika cinsinden ortalama oturum uzunluğu. Oturum süresi, bir oyuncunun Google Play Games hizmetlerinde oturum açtığı zamana göre belirlenir.
Son oynamasından bu yana geçen gün sayısı: Oyuncunun son oynamasından bu yana geçen yaklaşık gün sayısı.
Satın alma sayısı: Oyuncu için uygulama içi satın alma işlemlerinin yaklaşık sayısı.
Oturum sayısı: Oynatıcının yaklaşık oturum sayısı. Oturumlar, bir oyuncunun Google Play Games hizmetlerinde oturum açma sayısına göre belirlenir.
Oturum yüzdelik dilimi: 0 ile 1 (bu değerler dahil) arasında ondalık bir değer olarak verilir ve oyuncu için oturum yüzdelerinin yaklaşık yüzdelik değeri. Bu değer, mevcut oyuncunun bu oyunun oyuncu tabanının geri kalanına kıyasla kaç oturum oynadığını gösterir. Yüksek sayılar, bu oyuncunun daha fazla oturum oynadığını gösterir.
Harcama yüzdelik dilimi: Oynatıcının yaklaşık harcama yüzdelik dilimi. 0 ile 1 arasında (0 ve 1 dahil) ondalık bir değer olarak verilir. Bu değer, mevcut oyuncunun bu oyunun oyuncu tabanının geri kalanına kıyasla ne kadar harcama yaptığını gösterir. Yüksek sayılar, bu oyuncunun daha fazla harcama yaptığını gösterir.
Aşağıdaki oynatıcı verisi türleri kullanımdan kaldırılmıştır ve her zaman ayarlanmamış bir değer sabiti döndürür:
- Uygulamayı kullanmayı bırakma olasılığı: Bir oyuncunun sonraki gün uygulamayı kullanmayı bırakıp bırakmayacağına dair tahmin. 0 (düşük kaybetme olasılığı) ile 1 (yüksek uygulamayı kullanmayı bırakma olasılığı) dahil olmak üzere bu sayı arasında ondalık bir değer verilir. Uygulamayı kullanmayı bırakma, 7 gün boyunca hiçbir işlem yapılmadığını ifade eder.
- Harcama olasılığı: Oyuncunun bu oyunda harcama yapmayı seçmeye yönelik yaklaşık olasılığı. 0 (düşük harcama olasılığı) ile 1 (yüksek harcama olasılığı) dahil olmak üzere bu değerler arasında ondalık bir değer olarak verilir.
- Sonraki 28 gün için toplam harcama: Bu oyunda sonraki 28 gün içinde beklenen yaklaşık toplam oyuncu harcaması.
- Yüksek harcama olasılığı: Bir oyuncunun, önümüzdeki 28 gün boyunca bu oyunun oyuncu tabanının 95. yüzdelik diliminde veya daha yüksek bir kısmında bir miktar harcama yapma olasılığıdır. Bu, 0 (yüksek harcama yapma olasılığı düşük) ile 1 (yüksek harcama yapma olasılığı yüksek) arasında ondalık bir değer olarak verilir.
Başlamadan önce
Oynatıcı istatistikleri API'sını kullanmaya başlamadan önce:
- Kod örneğini indirip inceleyin.
- Kalite Kontrol Listesi'nde açıklanan önerilere aşina olun.
Müşteriyi alma
Oyuncu istatistikleri API'sini kullanmaya başlamak için oyununuzun önce bir PlayerStatsClient
nesnesi edinmesi gerekir. Bunu, Games.getPlayerStatsClient()
yöntemini çağırarak ve etkinliği ileterek yapabilirsiniz.
PlayerStatsClient
sınıfı, sonuçları eşzamansız olarak döndürmek için Google Play Hizmetleri Task
sınıfından yararlanır. İş parçacıklı işleri yönetmek amacıyla görevleri kullanma hakkında daha fazla bilgi edinmek için Tasks API geliştirici kılavuzuna bakın.
Verileri alma
Şu anda oturum açmış olan oyuncunun oyuncu istatistik verilerini almak için şu adımları uygulayın:
PlayerStatsClient.loadPlayerStats()
yöntemini çağırın.Çağrı başarılı olursa Google Play Games hizmetleri, eşzamansız olarak bir
PlayerStats
nesnesi yükleyenTask
nesnesi döndürür. Oturum açmış oyuncunun uygulamanızdaki etkinlikleri hakkında veri almak için bu nesnenin yöntemlerini kullanın.
Aşağıda bununla ilgili bir örnek verilmiştir:
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()); } } }); }
İpuçları
Play İstatistikleri API'si, etkileşim ve harcama davranışlarına göre çeşitli oyuncu türlerini kolayca belirlemenize ve oyun deneyimlerini iyileştirmek için uygun stratejileri uygulamanıza olanak tanır.
Aşağıdaki tabloda bazı örnek oyuncu segmentleri ve önerilen etkileşim stratejileri listelenmiştir:
Oyuncu Segmenti | Etkileşim stratejisi |
---|---|
Sık oturum açan ve yüksek harcama yüzdesine sahip olan, ancak son bir hafta veya daha uzun bir süredir oyun oynamamış olan oyuncular. |
|
Düşük harcama yüzdesinde olan ve etkileşim düzeyi yüksek oyuncular. |
|
Yüksek harcama yapan oyuncular zirveye ulaşıldığına ve daha seyrek oynamaya başladığına işaret eder. |
|
Harcama olasılığı çok yüksek veya çok düşük olan oyuncular. |
|