La API de estadísticas de jugadores te permite personalizar experiencias del juego para segmentos específicos de jugadores y diferentes etapas del ciclo de vida del jugador. Puedes crear experiencias personalizadas para cada segmento de jugadores según su avance, consumo y participación. Por ejemplo, puedes usar esta API para realizar acciones proactivas a fin de incentivar a un jugador menos activo de modo que vuelva a interesarse en tu juego; por ejemplo, mostrando y promocionando nuevos elementos del juego cuando el jugador acceda.
En esta guía, se muestra cómo usar la API de Player Stats en juegos que utilizan los Servicios de juego de Google Play. Se pueden encontrar las APIs en los paquetes com.google.android.gms.games.stats
y com.google.android.gms.games
.
Antes de comenzar
Antes de comenzar a usar la API de estadísticas de jugadores, haz lo siguiente:
- Descarga y revisa la muestra de código.
- Familiarízate con las recomendaciones que se describen en la lista de tareas de calidad.
Cómo obtener el cliente de Player Stats
A fin de comenzar a usar la API de estadísticas de jugadores, el juego primero debe obtener un objeto PlayerStatsClient
. Para ello, llama al método Games.getPlayerStatsClient()
y pasa la actividad y el GoogleSignInAccount
del jugador actual. Si quieres saber cómo recuperar la información de la cuenta del jugador, consulta Información sobre el acceso a juegos para Android.
Aspectos básicos de las estadísticas del jugador
Puedes usar la API de Player Stats para obtener datos sobre la actividad de un jugador en el juego. Entre los tipos de datos sobre los jugadores que puedes obtener, se incluyen los siguientes:
Duración promedio de la sesión: Indica la duración promedio de la sesión del jugador en minutos. La extensión de la sesión se determina por el tiempo que el jugador permanece conectado a los Servicios de juego de Google Play.
Días desde la última vez que se jugó: Indica la cantidad aproximada de días desde la última vez que el usuario jugó.
Cantidad de compras: Indica la cantidad aproximada de compras directas del jugador desde la aplicación.
Cantidad de sesiones: Indica la cantidad aproximada de sesiones del jugador. Las sesiones se determinan por la cantidad de veces que el jugador accede a los Servicios de juego de Google Play.
Percentil de sesiones: Indica el percentil aproximado de sesiones del jugador, dado como un valor decimal entre 0 y 1 inclusive. Este valor indica la cantidad de sesiones en las que participó el jugador actual en comparación con el resto de la base de jugadores del juego. Los números más altos indican que ese jugador participó en más sesiones.
Percentil de consumo: Indica el percentil de consumo aproximado del jugador, dado como un valor decimal entre 0 y 1 inclusive. Este valor indica el consumo del jugador actual en comparación con el resto de la base de jugadores del juego. Los números más altos indican que los gastos de este jugador fueron mayores.
Los siguientes tipos de datos del jugador están en desuso y siempre muestran una constante de valor no establecido:
- Probabilidad de deserción: Indica la predicción de si un jugador abandonará el próximo día, dado como un valor decimal entre 0 (probabilidad baja de deserción) a 1 (probabilidad alta de deserción) inclusive. Por definición, la deserción equivale a 7 días de inactividad.
- Probabilidad de consumo: Indica la probabilidad aproximada de que el jugador elija gastar en este juego, dada como un valor decimal entre 0 (probabilidad baja de consumo) a 1 (probabilidad alta de consumo) inclusive.
- Consumo total para los próximos 28 días: Indica el consumo total aproximado que se espera por parte del jugador durante los próximos 28 días en este juego.
- Probabilidad de consumo elevado: Indica la probabilidad aproximada de que durante los próximos 28 días un jugador gaste una cantidad que se encuentra en el percentil 95 o superior de la base de jugadores de este juego. Esto se da como un valor decimal entre 0 (probabilidad baja de convertirse en un usuario de consumo elevado) a 1 (probabilidad alta de convertirse en un usuario de consumo elevado).
Cómo recuperar datos de estadísticas del jugador
Si deseas recuperar datos de estadísticas del jugador actualmente conectado, sigue estos pasos:
- Llama al método
PlayerStatsClient.loadPlayerStats()
. - Si la llamada se realiza correctamente, los Servicios de juego de Google Play mostrarán un objeto
Task
que cargará de forma asíncrona un objetoPlayerStats
. Usa los métodos de este objeto para recuperar datos sobre las actividades en tu app del jugador que accedió.
Por ejemplo:
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()); } } }); }
Sugerencias para usar los datos de Player Stats
La API de Play Stats te permite identificar con facilidad varios tipos de jugadores según su participación y comportamiento de consumo, y aplicar estrategias adecuadas para mejorar la experiencia de juego.
En la siguiente tabla se muestran algunos ejemplos de segmentos de jugadores y estrategias de participación recomendadas:
Segmento de jugadores | Estrategia de participación |
---|---|
Jugadores frecuentes con una gran cantidad de sesiones y un buen percentil de consumo, pero que no hayan usado el juego durante la última semana o por más tiempo. |
|
Jugadores muy activos en un percentil de consumo bajo. |
|
Jugadores con consumo elevado que muestren signos de haber alcanzado un pico y comiencen a jugar con menos frecuencia. |
|
Jugadores con probabilidad de consumo muy alta o muy baja. |
|