Statistiche dei giocatori nei giochi Android

L'API delle statistiche dei giocatori ti consente di personalizzare le esperienze di gioco in base a segmenti specifici di giocatori e le diverse fasi del loro ciclo di vita. Puoi creare modelli esperienze per ogni segmento di giocatori in base all'avanzamento, alla spesa dei giocatori e coinvolgenti. 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 articoli 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 nella com.google.android.gms.games.stats e com.google.android.gms.games pacchetti.

Prima di iniziare

Prima di iniziare a utilizzare l'API Statistiche giocatore:

Ottenere il client delle statistiche dei giocatori

Per iniziare a utilizzare l'API per le statistiche dei giocatori, il tuo gioco deve prima ottenere un PlayerStatsClient. A tale scopo, puoi chiamare il metodo Games.getPlayerStatsClient() e passare l'attività.

Nozioni di base sulle Statistiche giocatore

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 per i giochi di Google Play.

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

  • Numero di acquisti: il numero approssimativo di acquisti in-app per la un 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.

  • Percentile sessione: l'approssimazione del percentile di sessioni per il player, indicato 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ù alti indicano che questo giocatore ha giocato più sessioni.

  • Percentile di spesa: il percentile di spesa approssimativo del player, fornito come valore decimale compreso tra 0 e 1 inclusi. Questo valore indica quanto il giocatore corrente ha speso rispetto al resto del giocatore di questo gioco base. 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 dei prossimi 28 giorni: valore approssimativo del giocatore totale previsto spendere nei prossimi 28 giorni in questo gioco.
  • Probabilità di acquisto elevato: la probabilità approssimativa che su nei prossimi 28 giorni un giocatore spenderà un importo pari a percentile o superiore della base di giocatori di questo gioco. Viene fornito come valore decimale tra 0 (probabilità bassa di diventare un acquirente elevato) e 1 (probabilità elevata di diventare un acquirente elevato).

Recupero dei dati delle statistiche dei giocatori

Per recuperare i dati statistici relativi al giocatore che ha eseguito l'accesso al momento, segui questi passaggi: passaggi:

  1. Chiama il metodo PlayerStatsClient.loadPlayerStats().
  2. Se la chiamata va a buon fine, Google Play Services restituisce un oggetto Task che carica in modo asincrono un oggetto PlayerStats. Utilizza i metodi di questo oggetto per recuperare i dati su le attività del giocatore che ha eseguito l'accesso 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 dei giocatori

L'API Play Stats ti consente di identificare facilmente 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 numero elevato di sessioni e un buon percentile di spesa, ma che 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 per installare il gioco e partecipare. Questo approccio si basa sul divertimento dimostrato dal giocatore per reclutare nuovi giocatori.
Giocatori con una spesa elevata che mostrano segni di picco e di iniziare a giocare con meno frequenza.
  • Personalizza i bonus per rinnovare il loro interesse, ad esempio che offrono strumenti, armi di breve durata o di alto valore sconti.
  • 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 alta o molto bassa.
  • Bassa probabilità di spesa: offri la possibilità di guardare un video pubblicitario. Mostra articoli di prezzo più basso da acquistare.
  • Inclinati a spendere: indirizzali in anticipo al negozio in-game e fornisci promozioni speciali per incentivarli all'acquisto.