Statistiche dei giocatori nei giochi per Android

L'API delle statistiche dei giocatori ti consente di personalizzare le esperienze di gioco per segmenti specifici di giocatori e diverse fasi del loro ciclo di vita. Puoi creare esperienze personalizzate per ogni segmento di giocatori in base al loro avanzamento, alle loro spese e al loro coinvolgimento. Ad esempio, puoi utilizzare questa API per intraprendere azioni proattive al fine di stimolare un giocatore meno attivo a interagire nuovamente con il tuo gioco, ad esempio mostrando e promuovendo nuovi elementi in-game quando il giocatore accede.

Questa guida mostra come utilizzare l'API Statistiche dei giocatori nei giochi che utilizzano 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 dei giocatori:

Ottenere il client delle statistiche dei giocatori

Per iniziare a utilizzare l'API di statistiche dei giocatori, il tuo gioco deve prima ottenere un oggetto PlayerStatsClient. Per farlo, chiama il metodo Games.getPlayerStatsClient() e passa l'attività e il GoogleSignInAccount per il player corrente. Per scoprire come recuperare i dati dell'account del giocatore, consulta Accedere a Giochi Android.

Nozioni di base sulle statistiche dei giocatori

Puoi utilizzare l'API Player Stats per recuperare i dati sull'attività in-game di un giocatore. I tipi di dati dei giocatori che puoi recuperare includono:

  • Durata media della sessione: la durata media della sessione del player in minuti. La durata della sessione è determinata dal momento in cui un giocatore accede ai servizi Google Play Giochi.

  • 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 player. Le sessioni sono determinate dal numero di volte in cui un giocatore accede ai servizi per i giochi di Google Play.

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

  • 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 il giocatore corrente rispetto al resto della base di giocatori del gioco. Numeri più elevati indicano che questo giocatore ha speso di più.

I seguenti tipi di dati del player sono deprecati e restituiscono sempre un valore costante non impostato:

  • Probabilità di abbandono: la previsione dell'abbandono di un utente nel giorno successivo, indicata come valore decimale compreso tra 0 (probabilità di abbandono bassa) e 1 (probabilità di abbandono elevata). Il tasso di abbandono viene calcolato in base a 7 giorni di inattività.
  • Probabilità di spesa: la probabilità approssimativa che il giocatore scelga di effettuare una spesa in questo gioco, indicata come valore decimale compreso tra 0 (probabilità di spesa bassa) e 1 (probabilità di spesa elevata), inclusi.
  • Spesa totale per i prossimi 28 giorni: la spesa totale approssimativa prevista dei giocatori nei prossimi 28 giorni in questo gioco.
  • Probabilità di spesa elevata: la probabilità approssimativa che un giocatore, nel corso dei prossimi 28 giorni, spenda un importo compreso nel 95° percentile o superiore della base di giocatori di questo gioco. Questo viene fornito come un valore decimale compreso tra 0 (bassa probabilità di spendere molto) e 1 (alta probabilità di spendere molto di più).

Recuperare i dati delle statistiche dei giocatori

Per recuperare i dati delle statistiche del giocatore che ha eseguito l'accesso, segui questi passaggi:

  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 giocatore che ha eseguito l'accesso nella tua app.

Ecco un esempio:

public void checkPlayerStats() {
  Games.getPlayerStatsClient(this, GoogleSignIn.getLastSignedInAccount(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 statistici dei giocatori

L'API Play Statistiche ti consente di identificare facilmente i 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 esempi di segmenti di giocatori e strategie di coinvolgimento consigliate:

Segmento di giocatori Strategia di coinvolgimento
Giocatori frequenti con un elevato numero di sessioni e un buon percentile di spesa, ma non hanno giocato nell'ultima settimana o più.
  • Inviare una notifica relativa a uno sconto o un bonus speciale disponibile al loro ritorno in gioco.
  • Mostra un messaggio di benvenuto che riconosce risultati impressionanti e assegna un badge progettato per incoraggiare il ritorno.
Giocatori altamente coinvolti in un percentile di spesa basso.
  • Personalizza i bonus per incoraggiarli a invitare gli amici a installare e partecipare 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 di iniziare a giocare meno di frequente.
  • Personalizza i bonus per rinnovare il loro interesse, ad esempio offrendo strumenti, armi o sconti di alto valore e di breve durata.
  • La volta successiva che il giocatore accede, mostra un video che lo indirizza alle funzionalità della community, come gli attacchi ai clan, che stimolano un coinvolgimento più frequente e prolungato.
Giocatori con probabilità di spesa molto elevata o molto bassa.
  • Scarsa probabilità di spesa: offri la possibilità di guardare un video pubblicitario. Mostra articoli acquistabili a prezzi inferiori.
  • Inclinati a spendere: indirizzali in anticipo al negozio in-game e offri promozioni speciali per incentivarli all'acquisto.