In diesem Leitfaden erfahren Sie, wie Sie APIs für Bestenlisten in einer Android-App verwenden.
um visuelle Bestenlisten zu erstellen, die Punktzahl eines Spielers aufzuzeichnen und die Punktzahlen zu vergleichen.
mit dem Ergebnis des Spielers aus früheren Spielsitzungen vergleichen. Die APIs finden Sie
in der com.google.android.gms.games
und com.google.android.gms.games.leaderboards
Pakete.
Hinweis
Falls Sie dies noch nicht getan haben, kann es hilfreich sein, sich die Spielkonzepte für Bestenlisten.
Bevor Sie mit dem Programmieren mit den Bestenlisten-APIs beginnen:
- Folgen Sie der Anleitung zum Installieren und Einrichten der App, Google Play-Spieldienste in der Google Play Services SDK einrichten
- Legen Sie die Bestenlisten fest, die in Ihrem Spiel angezeigt oder aktualisiert werden sollen, indem Sie folgen Sie der Anleitung im Leitfaden zur Google Play Console.
- Laden Sie die Codebeispiele für Bestenlisten in der Android-Beispielseite
- Machen Sie sich mit den im Artikel Checkliste für die Qualität
Client für Bestenlisten abrufen
Damit Sie die Bestenlisten-API verwenden können, muss Ihr Spiel zuerst ein LeaderboardsClient
-Objekt abrufen.
Rufen Sie dazu die Methode Games.getLeadeboardsClient()
auf und übergeben Sie den Parameter
Aktivität und GoogleSignInAccount
für den aktuellen Spieler. Weitere Informationen zum Abrufen der
Informationen zum Spielerkonto finden Sie unter Anmeldung in Android-Spielen.
Punktzahl des Spielers aktualisieren
Wenn sich die Punktzahl eines Spielers ändert, z. B. wenn er das Spiel beendet, gilt Folgendes:
Die Punktzahl des Spiels kann durch Aufrufen von LeaderboardsClient.submitScore()
in der Bestenliste aktualisiert werden.
und übergibt die Bestenlisten-ID und den Punktzahl-Rohwert.
Das folgende Code-Snippet zeigt, wie Ihre App die Punktzahl des Spielers aktualisieren kann:
Games.getLeaderboardsClient(this, GoogleSignIn.getLastSignedInAccount(this)) .submitScore(getString(R.string.leaderboard_id), 1337);
Es empfiehlt sich, die Bestenlisten-ID in deiner strings.xml
-Datei zu definieren,
Ihr Spiel kann anhand der Ressourcen-ID auf die Bestenlisten verweisen. Wenn Sie Anrufe bei
die Spielerergebnisse zu aktualisieren und zu laden.
Best Practices, um eine Überschreitung Ihres API-Kontingents zu vermeiden.
Bestenliste anzeigen
Rufen Sie zum Anzeigen der Bestenliste LeaderboardsClient.getLeaderboardIntent()
auf. Sie erhalten
Intent
bis
Standardbenutzeroberfläche für Bestenlisten erstellen. Ihr Spiel kann dann die Benutzeroberfläche aufrufen, indem Sie
startActivityForResult
Das folgende Code-Snippet zeigt, wie Ihre App die Punktzahl des Spielers aktualisieren kann. Im
Code-Snippet RC_LEADERBOARD_UI
ist eine beliebige Ganzzahl für den Anfragecode.
private static final int RC_LEADERBOARD_UI = 9004; private void showLeaderboard() { Games.getLeaderboardsClient(this, GoogleSignIn.getLastSignedInAccount(this)) .getLeaderboardIntent(getString(R.string.leaderboard_id)) .addOnSuccessListener(new OnSuccessListener<Intent>() { @Override public void onSuccess(Intent intent) { startActivityForResult(intent, RC_LEADERBOARD_UI); } }); }
Beachten Sie, dass wir, obwohl kein Ergebnis zurückgegeben wird,
startActivityForResult
damit die API die Identität des aufrufenden Pakets ermitteln kann. Ein Beispiel für den Standardwert
Bestenlisten-UI ist unten zu sehen.
![](https://developers-dot-devsite-v2-prod.appspot.com/static/games/services/android/images/Leaderboard_Android.png?authuser=6&hl=de)