Statistiche sui giocatori per i giochi Android

Questa guida mostra come utilizzare l'API delle statistiche dei giocatori per Google Play Games Services. Puoi utilizzare l'API per le statistiche dei giocatori per recuperare i dati sull'attività di un giocatore nel gioco.

L'API Player Stats ti consente di personalizzare le esperienze di gioco in base a segmenti specifici di giocatori e alle diverse fasi del ciclo di vita del giocatore. Puoi creare esperienze personalizzate per ogni segmento di giocatori in base al loro avanzamento, alla spesa e al coinvolgimento. Ad esempio, puoi utilizzare questa API per intraprendere azioni proattive per incoraggiare un giocatore meno attivo a interagire nuovamente con il tuo gioco, ad esempio mostrando e promuovendo nuovi elementi di gioco quando il giocatore esegue l'autenticazione.

Le API sono disponibili nei pacchetti com.google.android.gms.games.stats e com.google.android.gms.games.

Prima di iniziare

Prima di iniziare a utilizzare l'API delle statistiche dei giocatori:

Scarica il client delle statistiche giocatore

Per iniziare a utilizzare l'API delle statistiche dei giocatori, il tuo gioco deve prima ottenere un oggetto PlayerStatsClient. Puoi farlo chiamando il metodo PlayerStatsClient.getPlayersClient() e passando l'attività.

La classe PlayerStatsClient utilizza la classe Task Google Play Services per restituire i risultati in modo asincrono. Per saperne di più sull'utilizzo delle attività per gestire il lavoro in thread, consulta la Guida per gli sviluppatori dell'API Tasks.

Nozioni di base sulle statistiche giocatore

Puoi utilizzare l'API per le statistiche dei giocatori per recuperare i dati sull'attività di un giocatore nel gioco. I tipi di dati dei giocatori che puoi recuperare includono:

  • Durata media della sessione: la durata media della sessione del giocatore in minuti. La durata della sessione è determinata dal momento in cui un giocatore viene autenticato dai servizi per i giochi di Google Play.

  • Giorni dall'ultima partita: il numero approssimativo di giorni dall'ultima partita del giocatore.

  • Numero di acquisti: il numero approssimativo di acquisti in-app per il giocatore.

  • Numero di sessioni: il numero approssimativo di sessioni del giocatore. Le sessioni sono determinate dal numero di volte in cui un giocatore è stato autenticato dai servizi per i giochi di Google Play.

  • Percentile sessione: l'approssimazione del percentile delle sessioni per il giocatore, espresso come valore decimale compreso tra 0 e 1 inclusi. Questo valore indica il numero di sessioni giocate dal giocatore attuale rispetto al resto della base di giocatori di questo gioco. Numeri più alti indicano che questo giocatore ha giocato più sessioni.

  • Percentile di spesa: il percentile di spesa approssimativo del giocatore, espresso come valore decimale compreso tra 0 e 1 inclusi. Questo valore indica quanto ha speso il giocatore attuale rispetto al resto della base di giocatori di questo gioco. Numeri più alti indicano che questo giocatore ha speso di più.

I seguenti tipi di dati del giocatore sono ritirati e restituiscono sempre una costante di valore non impostato:

  • Probabilità di abbandono: la previsione se un giocatore abbandonerà il giorno successivo, espressa come valore decimale compreso tra 0 (bassa probabilità di abbandono) e 1 (alta probabilità di abbandono) inclusi. L'abbandono viene definito come 7 giorni di inattività.
  • Probabilità di spesa: la probabilità approssimativa che il giocatore scelga di spendere in questo gioco, espressa come valore decimale compreso tra 0 (bassa probabilità di spesa) e 1 (alta probabilità di spesa) inclusi.
  • Spesa totale nei prossimi 28 giorni: la spesa totale approssimativa prevista per i giocatori nei prossimi 28 giorni in questo gioco.
  • Probabilità di spesa elevata: la probabilità approssimativa che nei prossimi 28 giorni un giocatore spenda un importo pari o superiore al 95° percentile della base di giocatori di questo gioco. Questo valore viene espresso come numero decimale compreso tra 0 (bassa probabilità di diventare un utente con una spesa elevata) e 1 (alta probabilità di diventare un utente con una spesa elevata).

Recuperare i dati delle statistiche giocatore

Per recuperare i dati delle statistiche del giocatore autenticato:

  1. Chiama il metodo PlayerStatsClient.loadPlayerStats().

  2. Se la chiamata ha esito positivo, Google Play Games Services restituisce un oggetto Task che carica in modo asincrono un oggetto PlayerStats. Utilizza i metodi di questo oggetto per recuperare i dati sulle attività del giocatore autenticato nella tua app.

Ecco un esempio:

public void checkPlayerStats() {
  PlayGames.getPlayerStatsClient(this)
      .loadPlayerStats(true)
      .addOnCompleteListener(new OnCompleteListener<AnnotatedData<PlayerStats>>() {
        @Override
        public void onComplete(@NonNull Task<AnnotatedData<PlayerStats>> task) {
          if (task.isSuccessful()) {
            // Check for cached data.
            if (task.getResult().isStale()) {
              Log.d(TAG, "using cached data");
            }
            PlayerStats stats = task.getResult().get();
            if (stats != null) {
              Log.d(TAG, "Player stats loaded");
              if (stats.getDaysSinceLastPlayed() > 7) {
                Log.d(TAG, "It's been longer than a week");
              }
              if (stats.getNumberOfSessions() > 1000) {
                Log.d(TAG, "Veteran player");
              }
              if (stats.getChurnProbability() == 1) {
                Log.d(TAG, "Player is at high risk of churn");
              }
            }
          } else {
            int status = CommonStatusCodes.DEVELOPER_ERROR;
            if (task.getException() instanceof ApiException) {
              status = ((ApiException) task.getException()).getStatusCode();
            }
            Log.d(TAG, "Failed to fetch Stats Data status: "
                + status + ": " + task.getException());
          }
        }
      });
}

Suggerimenti per l'utilizzo dei dati delle statistiche sui giocatori

L'API Play Stats ti consente di identificare vari tipi di giocatori in base al loro coinvolgimento e al loro comportamento di spesa e di applicare strategie appropriate per migliorare la loro esperienza di gioco.

La tabella seguente elenca alcuni segmenti di giocatori di esempio e le strategie di coinvolgimento consigliate:

Segmento del giocatore Strategia di coinvolgimento
Giocatori frequenti con un numero elevato di sessioni e un buon percentile di spesa, ma che non hanno giocato per almeno una settimana.
  • Invia una notifica relativa a uno sconto o a un bonus speciale disponibile al loro ritorno.
  • Mostra un messaggio di bentornato che riconosce i risultati impressionanti e assegna un badge progettato per incoraggiare il ritorno al gioco.
Giocatori molto coinvolti in un percentile di spesa basso.
  • Personalizza i bonus per incentivarli a invitare i loro amici a installare e unirsi al tuo gioco. Questo approccio si basa sul divertimento dimostrato dal giocatore per reclutare nuovi giocatori.
Giocatori con una spesa elevata che mostrano segni di aver raggiunto il picco e che iniziano a giocare meno frequentemente.
  • Personalizza i bonus per rinnovare il loro interesse, ad esempio offrendo strumenti, armi o sconti di valore elevato e di breve durata.
  • La volta successiva che il giocatore esegue l'autenticazione, mostra un video che lo indirizza alle funzionalità della community, come gli attacchi dei clan, che favoriscono un coinvolgimento più frequente e duraturo.
Giocatori con probabilità di spesa molto alta o molto bassa.
  • Poca probabilità di spesa: offri la possibilità di guardare un video pubblicitario. Mostra articoli a prezzi più bassi per l'acquisto.
  • Probabilità di spesa: indirizzali subito al negozio in-game e offri promozioni speciali per incentivarli all'acquisto.