Bu rehber, Android uygulamasında skor tablosu API'lerinin nasıl kullanılacağını gösterir.
görsel skor tabloları oluşturmak, bir oyuncunun skorunu kaydetmek ve skoru karşılaştırmak için
ve skoru karşılaştırmalı olarak
dikkate alınır. API'ler,
com.google.android.gms.games
ve com.google.android.gms.games.leaderboards
paketleri dahildir.
Başlamadan önce
Henüz yapmadıysanız skor tabloları oyunu kavramları hakkında daha fazla bilgi edinin.
Leaderboards API'lerini kullanarak kod yazmaya başlamadan önce:
Uygulamanızı kullanmak için yükleme ve ayarlama talimatlarını Google Play Games Hizmetleri Google Play Hizmetleri SDK'sını kurma kılavuzu.
Oyununuzun görüntülemesini veya güncellemesini istediğiniz skor tablolarını tanımlamak için buradaki talimatları uygulayarak Google Play Console rehberi.
Leaderboard'lar kod örneklerini indirin ve inceleyin: GiHub'daki Android örnekleri sayfası.
Şu bölümde açıklanan öneriler hakkında bilgi edinin: Kalite Kontrol Listesi.
Skor tablosu istemcisini edinin
Leaderboards API'sini kullanmaya başlamak için oyununuzun önce bir LeaderboardsClient
nesnesi alması gerekir.
Bunu, Games.getLeadeboardsClient()
yöntemini çağırıp
etkinliği'ne dokunun.
Oyuncunun skorunu güncelleyin
Oyuncunun puanı değiştiğinde (örneğin, oyuncu oyunu bitirdiğinde)
oyun LeaderboardsClient.submitScore()
numarasını arayarak skor tablosunda skorunu güncelleyebilir.
skor tablosu kimliğini ve ham puan değerini geçmelisiniz.
Aşağıdaki kod snippet'i, uygulamanızın oyuncunun puanını nasıl güncelleyebileceğini gösterir:
PlayGames.getLeaderboardsClient(this) .submitScore(getString(R.string.leaderboard_id), 1337);
strings.xml
dosyanızda skor tablosu kimliğini tanımlamak iyi bir uygulamadır.
Oyununuz kaynak kimliğine göre skor tablolarına referans verebilir. Çağrı yaparken
oyuncu skorlarını güncelleyip yüklediğinizden
en iyi uygulamalara göz atın.
Skor tablosu görüntüleme
Skor tablosunu görüntülemek için LeaderboardsClient.getLeaderboardIntent()
numaralı telefonu arayıp bir
Intent
-
Varsayılan leaderboard kullanıcı arayüzünü oluşturabilirsiniz. Oyununuz,
startActivityForResult
.
Aşağıdaki kod snippet'i, uygulamanızın oyuncunun puanını nasıl güncelleyebileceğini gösterir.
kod snippet'i ise RC_LEADERBOARD_UI
, istek kodu için rastgele bir tam sayıdır.
private static final int RC_LEADERBOARD_UI = 9004; private void showLeaderboard() { PlayGames.getLeaderboardsClient(this) .getLeaderboardIntent(getString(R.string.leaderboard_id)) .addOnSuccessListener(new OnSuccessListener<Intent>() { @Override public void onSuccess(Intent intent) { startActivityForResult(intent, RC_LEADERBOARD_UI); } }); }
Hiçbir sonuç döndürülmese bile
startActivityForResult
. Varsayılan
leaderboard kullanıcı arayüzü aşağıda gösterilmiştir.