Maç İstatistikleri

Bu belgede, C++ oyunlarında Google Play Games Hizmetleri Oyun İstatistikleri'nin nasıl kullanılacağı açıklanmaktadır. Bu belgede, projenizi Google Play Games Hizmetleri'ni ayarlama bölümünde açıklandığı şekilde ayarladığınız varsayılır. Oyun İstatistikleri API'sini PgsGameStatsClient bölümünde 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 istemcisini edinme

Başarılar API'sini kullanmaya başlamak için oyununuzun önce bir PgsGameStatsClient nesnesi alması gerekir. Bunu, PgsPlayerGameEvent_create yöntemini çağırıp etkinliği ileterek yapabilirsiniz.

İstemci tarafı entegrasyonu

PlayerGameEvent için istemci tarafı entegrasyonu, tetikleme noktalarında C++ SDK'sında etkinlik nesnesi oluşturmanızı ve bunları SDK tarafından sağlanan yükleme işlevlerini kullanarak göndermenizi gerektirir.

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

C++


// Build the PlayerGameEvent
PgsPlayerGameEvent* player_event = PgsPlayerGameEvent_create("matchCompleted");
if (player_event != nullptr) {
   PgsPlayerGameEvent_putString(player_event, "matchId", "Match_A");
   PgsPlayerGameEvent_putString(player_event, "gameMode", "Battle_B");
   PgsPlayerGameEvent_putString(player_event, "mapId", "Location_XYZ");
   PgsPlayerGameEvent_putBoolean(player_event, "isWinner", true);
   PgsPlayerGameEvent_putLong(player_event, "playerElimination", 2);
}
Build progressUpdate Player Game Event

C++


PgsPlayerGameEvent* progress_event = PgsPlayerGameEvent_create("progressUpdate");
if (progress_event != nullptr) {
   PgsPlayerGameEvent_putLong(progress_event, "currentProgress", 52);
}
Etkinliği Kaydetme ve Yükleme

C++


// Record the event
PgsGameStatsClient_recordEvent(client, player_event);

// This submits the events to PGS
PgsGameStatsClient_requestEventsUpload(client);

// Clean up handle to avoid leaks
PgsPlayerGameEvent_destroy(player_event);

// Clean up client handle when PGS operations are finished
PgsGameStatsClient_destroy(client);