Dokumen ini menjelaskan cara menggunakan Statistik Game Layanan game Google Play di game C++. Dokumen ini mengasumsikan bahwa Anda telah menyiapkan project seperti yang dijelaskan dalam Menyiapkan
Layanan game Google Play. Anda dapat menemukan Game Stats API di
PgsGameStatsClient.
Sebelum memulai
Jika Anda belum melakukannya, sebaiknya tinjau konsep game Statistik Game.
Sebelum Anda mulai membuat kode menggunakan Game Stats API:
Ikuti petunjuk penginstalan dan penyiapan aplikasi untuk menggunakan Layanan game Play di panduan Menyiapkan Layanan game Google Play.
Tentukan Statistik Game yang diinginkan untuk game Anda, dengan mengikuti petunjuk di panduan Konsol Google Play.
Mendapatkan klien Statistik Game
Untuk mulai menggunakan API pencapaian, game Anda harus mendapatkan objek
PgsGameStatsClient
terlebih dahulu. Anda dapat melakukannya dengan memanggil
PgsPlayerGameEvent_create
metode dan meneruskan aktivitas.
Integrasi sisi klien
Integrasi sisi klien untuk PlayerGameEvent akan melibatkan Anda dalam membuat objek peristiwa di C++ SDK, di titik pemicu dan
mengirimkannya menggunakan fungsi upload yang disediakan oleh SDK.
Demikian pula, untuk peristiwa progressUpdate, catat progres yang diperbarui menggunakan properti currentProgress dengan properti tambahan yang ditentukan dan kirimkan menggunakan fungsi upload yang disediakan oleh SDK.
Acara
Integrasi sisi klien untuk PlayerGameEvent adalah:
Membuat Peristiwa Game Pemain
C++
// Build the PlayerGameEvent
PgsPlayerGameEvent* player_event = PgsPlayerGameEvent_create("matchCompleted");
if (player_event != nullptr) {
PgsPlayerGameEvent_putString(player_event, "matchId", "Match_A");
PgsPlayerGameEvent_putString(player_event, "gameMode", "Battle_B");
PgsPlayerGameEvent_putString(player_event, "mapId", "Location_XYZ");
PgsPlayerGameEvent_putBoolean(player_event, "isWinner", true);
PgsPlayerGameEvent_putLong(player_event, "playerElimination", 2);
}
Membuat Peristiwa Game Pemain progressUpdate
C++
PgsPlayerGameEvent* progress_event = PgsPlayerGameEvent_create("progressUpdate");
if (progress_event != nullptr) {
PgsPlayerGameEvent_putLong(progress_event, "currentProgress", 52);
}
Merekam Peristiwa Dan Mengupload
C++
// Record the event
PgsGameStatsClient_recordEvent(client, player_event);
// This submits the events to PGS
PgsGameStatsClient_requestEventsUpload(client);
// Clean up handle to avoid leaks
PgsPlayerGameEvent_destroy(player_event);
// Clean up client handle when PGS operations are finished
PgsGameStatsClient_destroy(client);