Statystyki gier na Androida

Z tego przewodnika dowiesz się, jak używać interfejsów Game Stats API w aplikacji na Androida, aby odblokowywać i wyświetlać statystyki gry. Interfejsy API znajdziesz w pakietach com.google.android.gms.games i com.google.android.gms.games.playergameevent.

Zanim zaczniesz

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

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

Pobieranie klienta statystyk gry

Aby zacząć korzystać z interfejsu Game Stats API, gra musi najpierw uzyskać GameStatsClient obiekt. Możesz to zrobić, wywołując metodę Games.getGameStatsClient() i przekazując aktywność.

Integracja po stronie klienta

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

Podobnie w przypadku zdarzenia progressUpdate zarejestruj 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

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 ...

Tworzenie zdarzenia gry gracza progressUpdate

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 ...

Rejestrowanie i przesyłanie zdarzenia

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