Aggiungere statistiche dei giocatori al tuo gioco

A seguito del ritiro dell'API Google Sign-In, rimuoveremo l'SDK v1 per i giochi nel 2026. Dopo febbraio 2025, non potrai pubblicare su Google Play titoli che sono stati integrati di recente con l'SDK v1 per i giochi. Ti consigliamo di utilizzare l'SDK v2 per i giochi.
Anche se i titoli esistenti con le precedenti integrazioni di giochi v1 continueranno a funzionare per un paio di anni, ti consigliamo di eseguire la migrazione alla v2 a partire da giugno 2025.
Questa guida riguarda l'utilizzo dell'SDK v1 dei servizi per i giochi di Play. L'SDK C++ per i servizi per i giochi di Play v2 non è ancora disponibile.

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

Questa guida mostra come utilizzare l'API Player Stats in un'applicazione C++ o Objective-C nativa.

Nozioni di base sulle statistiche giocatore

Puoi utilizzare le 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 giocatore in minuti. La durata della sessione è determinata dal periodo di tempo in cui un giocatore ha eseguito l'accesso ai servizi per i giochi di Google Play.
  • Probabilità di abbandono dell'utente: la previsione se un giocatore abbandonerà il gioco il giorno successivo, indicata come 0 (bassa probabilità di abbandono) o 1 (alta probabilità di abbandono). L'abbandono viene definito come 7 giorni di inattività.
  • 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 accede ai 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, indicato 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ù.

Ottenere le statistiche di un giocatore attualmente connesso con C++

// Create the callback for our asynchronous fetch call.  This callback will
// log either an error or the average session length for the currently
// signed-in player.
gpg::StatsManager::FetchForPlayerCallback callback = [](gpg::StatsManager::FetchForPlayerResponse const &response) {
  if (IsError(response.status)) {
    LogE("An error occurred fetching player stats.");
  } else {
  gpg::PlayerStats const & player_stats = response.data;
    if (player_stats.HasAverageSessionLength()) {
      LogI("Average session length: %f", player_stats.AverageSessionLength());
    } else {
      LogW("Currently signed-in player had no associated average session length stats.");
    }
  }
};
// Asynchronously fetch the Player Stats.  When the fetch is finished it
// will call our callback. game_services_ is the std::unique_ptr<GameServices>
// returned by gpg::GameServices::Builder.Create()
game_services_->Stats().FetchForPlayer(callback);

Ottenere le statistiche di un giocatore attualmente connesso con Objective-C

// Asynchronously fetches the Player Stats and then logs either a
// description of them or an error
[GPGPlayerStats playerStatsWithCompletionHandler:^(GPGPlayerStats *playerStats, NSError *error) {
  if (error) {
    NSLog(@"Error fetching player stats: %@", error);
  } else {
    NSLog(@"Description of stats for the currently signed-in player: %@", playerStats);
  }
}];

Suggerimenti per l'utilizzo dei dati delle statistiche sui 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 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 accede, mostra un video che lo indirizza alle funzionalità della community, come gli attacchi dei clan, che favoriscono un coinvolgimento più frequente e duraturo.