Mit der API für Spielerstatistiken können Sie das Spielerlebnis auf bestimmte Spielersegmente und verschiedene Phasen des Spielerlebenszyklus zuschneiden. Sie können für jedes Spielersegment personalisierte Inhalte erstellen, die auf dem Fortschritt, den Ausgaben und der Interaktion der Spieler basieren. Sie können diese API beispielsweise verwenden, um einen weniger aktiven Spieler zu einer erneuten Interaktion mit Ihrem Spiel zu bewegen, z. B. indem Sie bei der Anmeldung des Spielers neue In-Game-Artikel anzeigen und bewerben.
In diesem Leitfaden erfahren Sie, wie Sie die Player Stats API in Spielen mithilfe der Google Play-Spieldienste verwenden. Die APIs befinden sich in den Paketen com.google.android.gms.games.stats
und com.google.android.gms.games
.
Hinweis
Vor der Verwendung der Player Stats API:
- Laden Sie das Codebeispiel herunter und sehen Sie es sich an.
- Machen Sie sich mit den Empfehlungen in der Checkliste für die Qualität vertraut.
Client für Spielerstatistiken abrufen
Damit du die Player Stats API verwenden kannst, muss dein Spiel zuerst ein PlayerStatsClient
-Objekt abrufen. Rufe dazu die Methode Games.getPlayerStatsClient()
auf und übergebe die Aktivität und die GoogleSignInAccount
für den aktuellen Spieler. Informationen zum Abrufen der Informationen zum Spielerkonto findest du unter Anmeldung in Android-Spielen.
Spielerstatistiken – Grundlagen
Mit der Player Stats API können Sie Daten zur In-Game-Aktivität eines Spielers abrufen. Du kannst unter anderem folgende Spielerdaten abrufen:
Durchschnittliche Sitzungsdauer: Die durchschnittliche Sitzungsdauer des Nutzers in Minuten. Die Sitzungsdauer wird durch die Zeit bestimmt, während der ein Spieler in den Google Play-Spieldiensten angemeldet ist.
Tage seit der letzten Aktivität: Die ungefähre Anzahl der Tage, seit der Spieler zuletzt aktiv war.
Anzahl der Käufe: Die ungefähre Anzahl der In-App-Käufe des Spielers.
Anzahl der Sitzungen: Die ungefähre Anzahl der Sitzungen des Spielers. Sitzungen werden anhand der Häufigkeit bestimmt, mit der sich ein Spieler in den Google Play-Spieldiensten anmeldet.
Sitzungsprozentil: Die Schätzung des Sitzungsprozentils für den Spieler, angegeben als Dezimalwert zwischen 0 und 1. Dieser Wert gibt an, wie viele Sitzungen der aktuelle Spieler im Vergleich zum Rest der Spielerbasis dieses Spiels gespielt hat. Je höher die Zahl, desto mehr Sitzungen hat dieser Spieler absolviert.
Ausgabenperzentil: Das ungefähre Ausgabenperzentil des Spielers als Dezimalwert zwischen 0 und 1 (einschließlich). Dieser Wert gibt an, wie viel der aktuelle Spieler im Vergleich zum Rest der Spielerbasis dieses Spiels ausgegeben hat. Höhere Werte bedeuten, dass dieser Spieler mehr ausgegeben hat.
Die folgenden Arten von Player-Daten sind eingestellt und geben immer die Konstante „unset“ zurück:
- Abwanderungswahrscheinlichkeit: Die Vorhersage, ob ein Spieler am nächsten Tag abwandern wird. Sie wird als Dezimalzahl zwischen 0 (niedrige Abwanderungswahrscheinlichkeit) und 1 (hohe Abwanderungswahrscheinlichkeit) angegeben. Als Abwanderung wird eine Inaktivität von 7 Tagen definiert.
- Ausgabenwahrscheinlichkeit: Die ungefähre Wahrscheinlichkeit, dass sich der Spieler für dieses Spiel entschieden hat, angegeben als Dezimalwert zwischen 0 (niedrige Wahrscheinlichkeit von Ausgaben) und einschließlich 1 (hohe Ausgabenwahrscheinlichkeit).
- Gesamtausgaben in den nächsten 28 Tagen: Die geschätzten Gesamtausgaben der Spieler in diesem Spiel in den nächsten 28 Tagen.
- Wahrscheinlichkeit für hohe Ausgaben: Die ungefähre Wahrscheinlichkeit, dass ein Spieler in den nächsten 28 Tagen einen Betrag ausgibt, der dem 95. Perzentil oder höher der Spielerbasis dieses Spiels entspricht. Dieser Wert wird als Dezimalzahl zwischen 0 (geringe Wahrscheinlichkeit, dass der Nutzer ein Vielbeschäftigter wird) und 1 (hohe Wahrscheinlichkeit, dass der Nutzer ein Vielbeschäftigter wird) angegeben.
Daten zu Spielerstatistiken abrufen
So rufst du Spielerstatistiken für den aktuell angemeldeten Spieler ab:
- Rufen Sie die Methode
PlayerStatsClient.loadPlayerStats()
auf. - Wenn der Aufruf erfolgreich ist, gibt Google Play Spiele ein
Task
-Objekt zurück, das asynchron einPlayerStats
-Objekt lädt. Mit den Methoden dieses Objekts kannst du Daten zu den Aktivitäten des angemeldeten Spielers in deiner App abrufen.
Beispiel:
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()); } } }); }
Tipps zur Verwendung von Spielerstatistiken
Mit der Play Stats API können Sie verschiedene Arten von Spielern anhand ihres Interaktions- und Ausgabeverhaltens ganz einfach identifizieren und entsprechende Strategien zur Verbesserung des Spiels anwenden.
In der folgenden Tabelle sind einige Beispiele für Spielersegmente und empfohlene Interaktionsstrategien aufgeführt:
Spielersegment | Strategie für die Interaktion |
---|---|
Häufige Spieler mit einer hohen Anzahl von Sitzungen und einem guten Prozentsatz der Ausgaben, die seit mindestens einer Woche nicht mehr gespielt haben. |
|
Spieler mit hoher Interaktionsrate, die zu den niedrigsten Ausgabenprozentilen gehören. |
|
Spieler mit hohen Ausgaben, die Anzeichen dafür zeigen, dass sie ihren Höhepunkt erreicht haben und seltener spielen. |
|
Spieler mit sehr hoher oder sehr niedriger Ausgabenwahrscheinlichkeit |
|