Android oyunları için oyun istatistikleri

Bu kılavuzda, oyununuzdaki oyun istatistiklerinin kilidini açmak ve bunları göstermek için Android uygulamasında oyun istatistikleri API'lerinin nasıl kullanılacağı açıklanmaktadır. API'leri com.google.android.gms.games ve com.google.android.gms.games.playergameevent paketlerinde bulabilirsiniz.

Başlamadan önce

Henüz yapmadıysanız Oyun İstatistikleri oyun kavramlarını incelemeniz faydalı olabilir.

Oyun İstatistikleri API'sini kullanarak kod yazmaya başlamadan önce:

Oyun İstatistikleri istemcisi edinme

Oyun İstatistikleri API'sini kullanmaya başlamak için oyununuzun önce bir GameStatsClient nesnesi alması gerekir. Bunu, Games.getGameStatsClient() yöntemini çağırıp etkinliği ileterek yapabilirsiniz.

İstemci tarafı entegrasyonu

PlayerGameEvent için istemci tarafı entegrasyonunda, tetikleme noktalarında Java SDK'sında etkinlik nesnesini oluşturmanız ve bunları SDK tarafından sağlanan yükleme işlevlerini kullanarak göndermeniz gerekir.

Benzer şekilde, progressUpdate etkinliği için güncellenen ilerleme durumunu currentProgress özelliğiyle birlikte ek tanımlı özellikler kullanarak kaydedin ve SDK tarafından sağlanan yükleme işlevlerini kullanarak gönderin.

Etkinlikler

PlayerGameEvent için istemci tarafı entegrasyonları şunlardır:

Build Player Game Event

Java


// Build the PlayerGameEvent
PlayerGameEvent event = new PlayerGameEvent.Builder("matchCompleted")
  .addProperty("matchId", "Match_A")
  .addProperty("gameMode", "Battle_B")
  .addProperty("mapId", "Location_XYZ")
  .addProperty("isWinner", true)
  .addProperty("playerElimination", 2)
  .build();

List events = new ArrayList<>();
// ... populate list ...

Build progressUpdate Player Game Event

Java


// Build the PlayerGameEvent
PlayerGameEvent event = new PlayerGameEvent.Builder("progressUpdate")
  .addProperty("currentProgress", 52)
  // Add other properties if needed
  .build();

List events = new ArrayList<>();
// ... populate list ...

Etkinliği Kaydetme ve Yükleme

Java


// Buffers the event locally.
client.recordEvent(event);

// Buffers the events locally, (List version)
client.recordEvents(events);

// This submits the events to PGS
client.requestEventsUpload();