Statistiche dei giocatori nei giochi Android

L'API delle statistiche dei giocatori ti consente di personalizzare le esperienze di gioco per segmenti specifici di giocatori e fasi del ciclo di vita dei giocatori. Puoi creare esperienze su misura per ogni segmento di giocatori in base all'avanzamento, alla spesa e al coinvolgimento dei giocatori. 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 articoli in-game quando il giocatore accede.

Questa guida mostra come utilizzare l'API delle statistiche del giocatore nei giochi usando i servizi per i giochi di Google Play. 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 del player:

Ottenere il client delle statistiche del giocatore

Per iniziare a utilizzare l'API delle statistiche del player, il gioco deve prima ottenere un oggetto PlayerStatsClient. Per farlo, chiama il metodo Games.getPlayerStatsClient() e trasmetti l'attività.

Nozioni di base sulle statistiche del giocatore

Puoi usare l'API delle statistiche del giocatore per recuperare i dati sull'attività in-game di un giocatore. I tipi di dati del player che puoi recuperare includono:

  • Durata media della sessione: la durata media della sessione del player in minuti. La durata della sessione viene determinata in base al momento in cui un giocatore accede a Google Play Giochi.

  • Giorni dall'ultima riproduzione. Il numero approssimativo di giorni dall'ultima riproduzione del player.

  • Numero di acquisti. Il numero approssimativo di acquisti in-app per il player.

  • Numero di sessioni: il numero approssimativo di sessioni del player. Le sessioni sono determinate dal numero di volte in cui un giocatore accede ai servizi per i giochi di Google Play.

  • Percentuale di sessioni: approssimazione del percentile di sessioni per il player, specificato 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.

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

I seguenti tipi di dati del player sono obsoleti e restituiscono sempre una costante non impostata:

  • Probabilità di abbandono dell'utente: la previsione se un giocatore abbandona il giorno successivo, dato come valore decimale compreso tra 0 (probabilità di abbandono) e 1 (alta probabilità di abbandono). Il tasso di abbandono è definito come 7 giorni di inattività.
  • Probabilità di spesa: la probabilità approssimativa del giocatore che sceglie di spendere in questo gioco, specificata come valore decimale compreso tra 0 (probabilità di spesa bassa) e 1 (probabilità di spesa elevata) inclusi.
  • Spesa totale nei prossimi 28 giorni: la spesa totale prevista prevista per i giocatori nei prossimi 28 giorni del 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 è dato da un valore decimale compreso tra 0 (probabilità di diventare con un budget elevato) e 1 (con un'elevata probabilità di diventare un utente che spende molto).

Recupero delle statistiche relative ai giocatori

Per recuperare i dati delle statistiche relative al player a cui hai eseguito l'accesso, procedi nel seguente modo:

  1. Chiama il metodo PlayerStatsClient.loadPlayerStats().
  2. Se la chiamata ha esito positivo, i servizi per i giochi di Google Play restituiscono un oggetto Task che carica in modo asincrono un oggetto PlayerStats. Utilizza i metodi di questo oggetto per recuperare i dati sulle attività del player che hanno eseguito l'accesso nella tua app.

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 di Statistiche giocatore

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

Nella tabella di seguito sono elencati alcuni segmenti di player di esempio e strategie di coinvolgimento consigliate:

Segmento di giocatori Strategia di coinvolgimento
Giocatori frequenti con un numero elevato di sessioni e un buon percentile di spesa, ma che non hanno giocato all'ultima settimana o più.
  • Invia una notifica relativa a uno sconto o a un bonus speciale disponibile al ritorno.
  • Mostra un messaggio di benvenuto per confermare gli eccezionali risultati e assegna un badge pensato per incoraggiare la fidelizzazione.
Giocatori molto coinvolti in un percentile di spesa ridotta.
  • Personalizza i bonus per incentivarli a invitare gli amici a installare il tuo gioco e a partecipare. Questo approccio si basa sul gradimento del gioco da parte del giocatore per reclutare nuovi giocatori.
Giocatori con una spesa elevata che mostrano segnali di attività di picco e che iniziano a giocare meno frequentemente.
  • Personalizza i bonus per rinfrescare il loro interesse, ad esempio offrendo sconti, strumenti o armi di breve durata.
  • La prossima volta che il giocatore accede, mostra un video che lo indirizza alle funzionalità della community, come gli attacchi del clan, che generano interazioni più frequenti e più lunghe.
Giocatori con probabilità di spesa molto alta o molto bassa.
  • Con scarse spese: offri la possibilità di guardare un video pubblicitario. Mostra gli articoli di prezzo più basso acquistabili.
  • Con elevata probabilità: indirizzali subito allo store in-game e offri promozioni speciali per incentivarli all'acquisto.