Panduan ini menunjukkan cara mengumpulkan data gameplay pemain untuk analisis game
menggunakan API peristiwa yang disediakan oleh Layanan game Google Play. API ini dapat ditemukan dalam paket
com.google.android.gms.games.event
dan com.google.android.gms.games
.
Sebelum memulai
Jika Anda belum melakukannya, sebaiknya tinjau konsep game peristiwa.
Sebelum Anda mulai membuat kode menggunakan API peristiwa:
Tentukan peristiwa untuk game Anda di Konsol Google Play.
Ikuti rekomendasi checklist login.
Mendapatkan klien peristiwa
Untuk mulai menggunakan API peristiwa, game Anda harus mendapatkan objek
EventsClient
terlebih dahulu. Anda dapat melakukannya dengan memanggil metode PlayGames.getEventsClient()
dan meneruskan aktivitas.
Mengirim peristiwa
Anda dapat menambahkan kode dalam game untuk memberi tahu Layanan game Play setiap kali terjadi peristiwa yang menarik untuk game.
Untuk mengirim pembaruan peristiwa, panggil
EventsClient.increment()
dengan nilai eventId
dan bilangan bulat incrementAmount
yang sama dengan atau
lebih besar dari 0.
eventId
dibuat oleh Layanan game Play saat Anda pertama kali menentukan peristiwa di Konsol Google Play dan digunakan untuk mengidentifikasi peristiwa ini secara unik di game Anda.Anda dapat menggunakan input
incrementAmount
untuk menentukan progres kuantitatif pemain dalam menyelesaikan beberapa sasaran khusus game. Misalnya, jika peristiwa yang ingin dilacak game Anda adalah 'Defeat 500 bug-eyed monster', nilaiincrementAmount
dapat berupa jumlah monster yang dibunuh pemain dalam satu pertempuran.
Berikut adalah contoh cara mengirimkan peristiwa dengan kenaikan jumlah 1:
public void submitEvent(String eventId) { PlayGames.getEventsClient(this) .increment(eventId, 1); }
Mengambil peristiwa
Anda dapat mengambil semua data peristiwa yang disimpan di server Google untuk game Anda, dengan
memanggil
EventsClient.load()
.
Dalam panggilan metode, teruskan nilai boolean untuk menunjukkan apakah Layanan game Play
harus menghapus data yang di-cache secara lokal di perangkat pengguna.
Untuk mengambil data peristiwa tertentu yang Anda tentukan di
Konsol Google Play, panggil
EventsClient.loadByIds()
dan teruskan array ID peristiwa dalam parameter input.
Cuplikan berikut menunjukkan cara membuat kueri Layanan game Play untuk daftar semua peristiwa untuk game Anda:
public void loadEvents() { PlayGames.getEventsClient(this) .load(true) .addOnCompleteListener(new OnCompleteListener<AnnotatedData<EventBuffer>>() { @Override public void onComplete(@NonNull Task<AnnotatedData<EventBuffer>> task) { if (task.isSuccessful()) { // Process all the events. for (Event event : task.getResult().get()) { Log.d(TAG, "loaded event " + event.getName()); } } else { // Handle Error Exception exception = task.getException(); int statusCode = CommonStatusCodes.DEVELOPER_ERROR; if (exception instanceof ApiException) { ApiException apiException = (ApiException) exception; statusCode = apiException.getStatusCode(); } showError(statusCode); } } }); }