Statystyki meczu

Z tego dokumentu dowiesz się, jak korzystać ze statystyk gier w usługach Gier Google Play w grach w języku C++. Zakładamy, że projekt został skonfigurowany zgodnie z opisem w artykule Konfigurowanie usług Gier Google Play. Interfejs Game Stats API znajdziesz w PgsGameStatsClient.

Zanim zaczniesz

Jeśli jeszcze tego nie zrobisz, warto zapoznać się z pojęciami dotyczącymi statystyk gier.

Zanim zaczniesz kodować za pomocą interfejsu API statystyk gry:

Pobieranie klienta statystyk gier

Aby zacząć korzystać z interfejsu Achievements API, gra musi najpierw uzyskać obiekt PgsGameStatsClient. Możesz to zrobić, wywołując metodę PgsPlayerGameEvent_create i przekazując aktywność.

Integracja po stronie klienta

Integracja po stronie klienta w przypadku PlayerGameEvent będzie polegać na utworzeniu obiektu zdarzenia w pakiecie SDK C++ w punktach wyzwalających i wysłaniu ich za pomocą funkcji przesyłania udostępnianych przez pakiet SDK.

Podobnie w przypadku zdarzenia progressUpdate zapisz zaktualizowany postęp za pomocą właściwości currentProgress z dodatkowymi zdefiniowanymi właściwościami i wyślij je za pomocą funkcji przesyłania udostępnianych przez pakiet SDK.

Wydarzenia

Integracja po stronie klienta w przypadku PlayerGameEvent obejmuje:

Tworzenie zdarzenia gry gracza

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);
}
Tworzenie zdarzenia gry gracza progressUpdate

C++


PgsPlayerGameEvent* progress_event = PgsPlayerGameEvent_create("progressUpdate");
if (progress_event != nullptr) {
   PgsPlayerGameEvent_putLong(progress_event, "currentProgress", 52);
}
Rejestrowanie i przesyłanie zdarzenia

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);