Google ile Giriş API'sinin desteğinin sonlandırılmasının ardından, 2026'da Games v1 SDK'sını kaldırıyoruz. Şubat 2025'ten sonra games v1 SDK'sıyla yeni entegre edilen oyunları Google Play'de yayınlayamayacaksınız. Bunun yerine games v2 SDK'sını kullanmanızı öneririz.
Önceki Games v1 entegrasyonlarına sahip mevcut uygulamalar birkaç yıl daha çalışmaya devam edecek olsa da
Haziran 2025'ten itibaren
v2'ye geçiş yapmanız
önerilir.
Bu kılavuz, Play Games Hizmetleri v1 SDK'sının kullanımıyla ilgilidir. Play Games Hizmetleri v2 için C++ SDK'sı henüz kullanılamamaktadır.
Oyuncu İstatistikleri API'si, oyun deneyimlerini oyuncu yaşam döngüsünün farklı aşamalarındaki belirli oyuncu segmentlerine göre uyarlamanıza olanak tanır. Oyuncuların ilerleme durumuna, harcamalarına ve etkileşimlerine göre her oyuncu segmenti için özel deneyimler oluşturabilirsiniz. Örneğin, bu API'yi kullanarak daha az aktif olan oyuncuları oyununuzla yeniden etkileşime geçmeye teşvik etmek için proaktif işlemler yapabilirsiniz. Örneğin, oyuncu oturum açtığında yeni oyun içi öğeleri gösterip tanıtabilirsiniz.
Bu kılavuzda, Player Stats API'nin yerel bir C++ veya Objective-C uygulamasında nasıl kullanılacağı gösterilmektedir.
Oyuncu istatistikleriyle ilgili temel bilgiler
Oyuncunun oyun içi etkinliğiyle ilgili verileri almak için Player Stats API'lerini kullanabilirsiniz. Alabileceğiniz oyuncu verisi türleri şunlardır:
- Ortalama oturum süresi: Oyuncunun ortalama oturum süresi (dakika cinsinden). Oturum süresi, oyuncunun Google Play Oyun Hizmetleri'nde oturum açtığı süreye göre belirlenir.
- Uygulamayı kullanmayı bırakma olasılığı: Bir oyuncunun ertesi gün uygulamayı kullanmayı bırakıp bırakmayacağıyla ilgili tahmindir. 0 (uygulamayı kullanmayı bırakma olasılığı düşük) veya 1 (uygulamayı kullanmayı bırakma olasılığı yüksek) olarak verilir. Kaybetme, 7 gün boyunca işlem yapılmaması olarak tanımlanır.
- Son oynama tarihinden bu yana geçen gün sayısı: Oyuncunun son oynama tarihinden bu yana geçen yaklaşık gün sayısı.
- Satın alma sayısı: Oyuncunun yaklaşık uygulama içi satın alma sayısı.
- Oturum sayısı: Oyuncunun yaklaşık oturum sayısı. Oturumlar, bir oyuncunun Google Play Games Hizmetleri'nde oturum açma sayısına göre belirlenir.
- Oturum yüzdelik dilimi: Oyuncunun oturum yüzdelik diliminin yaklaşık değeri. 0 ile 1 arasında (ikisi de dahil) ondalık değer olarak verilir. Bu değer, mevcut oyuncunun bu oyunun geri kalan oyuncu tabanına kıyasla kaç oturum oynadığını gösterir. Daha yüksek sayılar, bu oynatıcının daha fazla oturum oynadığını gösterir.
- Harcama yüzdelik dilimi: Oyuncunun yaklaşık harcama yüzdelik dilimi, 0 ile 1 arasında (bu değerler dahil) ondalık değer olarak verilir. Bu değer, mevcut oyuncunun bu oyunun geri kalan oyuncu tabanına kıyasla ne kadar harcama yaptığını gösterir. Daha yüksek sayılar, bu oyuncunun daha fazla harcama yaptığını gösterir.
C++ ile şu anda oturum açmış bir oyuncunun istatistiklerini alma
// Create the callback for our asynchronous fetch call. This callback will
// log either an error or the average session length for the currently
// signed-in player.
gpg::StatsManager::FetchForPlayerCallback callback = [](gpg::StatsManager::FetchForPlayerResponse const &response) {
if (IsError(response.status)) {
LogE("An error occurred fetching player stats.");
} else {
gpg::PlayerStats const & player_stats = response.data;
if (player_stats.HasAverageSessionLength()) {
LogI("Average session length: %f", player_stats.AverageSessionLength());
} else {
LogW("Currently signed-in player had no associated average session length stats.");
}
}
};
// Asynchronously fetch the Player Stats. When the fetch is finished it
// will call our callback. game_services_ is the std::unique_ptr<GameServices>
// returned by gpg::GameServices::Builder.Create()
game_services_->Stats().FetchForPlayer(callback);
Objective-C ile şu anda oturumu açık olan bir oyuncunun istatistiklerini alma
// Asynchronously fetches the Player Stats and then logs either a
// description of them or an error
[GPGPlayerStats playerStatsWithCompletionHandler:^(GPGPlayerStats *playerStats, NSError *error) {
if (error) {
NSLog(@"Error fetching player stats: %@", error);
} else {
NSLog(@"Description of stats for the currently signed-in player: %@", playerStats);
}
}];
Oyuncu istatistikleri verilerini kullanmayla ilgili ipuçları
Play Stats API, etkileşim ve harcama davranışlarına göre çeşitli oyuncu türlerini kolayca belirlemenize ve oyun deneyimlerini iyileştirmek için uygun stratejiler uygulamanıza olanak tanır.
Aşağıdaki tabloda, bazı örnek oyuncu segmentleri ve önerilen etkileşim stratejileri listelenmiştir:
Oynatıcı Segmenti | Etkileşim Stratejisi |
---|---|
Yüksek sayıda oturum ve iyi harcama yüzdelik dilimi olan ancak son bir haftadır veya daha uzun süredir oynamayan sık oyuncular. |
|
Harcama yüzdelik dilimi düşük olan ve oyunla yüksek düzeyde etkileşim kuran oyuncular. |
|
Çok harcama yapan oyuncuların zirveye ulaştıklarına dair işaretler göstermesi ve daha az sıklıkta oynamaya başlaması. |
|