Statistiche di gioco per i giochi per Android

Questa guida mostra come utilizzare le API Statistiche di gioco in un'app per Android per sbloccare e visualizzare le statistiche di gioco nel tuo gioco. Le API sono disponibili nei pacchetti com.google.android.gms.games e com.google.android.gms.games.playergameevent.

Prima di iniziare

Se non l'hai ancora fatto, potrebbe essere utile esaminare i concetti di gioco delle statistiche di gioco.

Prima di iniziare a scrivere codice utilizzando l'API Statistiche di gioco:

Scarica un client Statistiche di gioco

Per iniziare a utilizzare l'API Statistiche di gioco, il tuo gioco deve prima ottenere un GameStatsClient oggetto. Puoi ottenerlo chiamando il Games.getGameStatsClient() metodo e passando l'attività.

Integrazione lato client

L'integrazione lato client per PlayerGameEvent prevede la creazione dell'oggetto evento in Java SDK nei punti di attivazione e l'invio utilizzando le funzioni di caricamento fornite dall'SDK.

Allo stesso modo, per l'evento progressUpdate, registra l'avanzamento aggiornato utilizzando la proprietà currentProgress con proprietà aggiuntive definite e inviale utilizzando le funzioni di caricamento fornite dall'SDK.

Eventi

L'integrazione lato client per PlayerGameEvent è:

Crea evento di gioco del giocatore

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

Crea evento di gioco del giocatore 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 ...

Registra evento e carica

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