本指南將說明如何運用 Android 應用程式內的遊戲統計資料 API,在遊戲中解鎖並顯示遊戲統計資料。您可以在 com.google.android.gms.games 和 com.google.android.gms.games.playergameevent 等套件中取得 API。
事前準備
建議您先複習遊戲統計資料的相關遊戲概念,這會對您很有幫助。
開始使用 Game Stats API 編寫程式碼之前:
按照「設定 Google Play 服務 SDK」指南的說明安裝並設定應用程式,以便使用 Google Play Games 服務。
按照 Google Play 管理中心指南的說明操作,定義遊戲要解鎖或顯示的遊戲統計資料。
取得遊戲統計資料用戶端
如要開始使用遊戲統計資料 API,遊戲必須先取得 GameStatsClient 物件。要取得此物件,您可以呼叫 Games.getGameStatsClient() 方法,然後在活動內傳遞。
用戶端整合
PlayerGameEvent 的用戶端整合作業包括在觸發點使用 Java SDK 建構事件物件,並使用 SDK 提供的上傳函式傳送這些物件。
同樣地,對於 progressUpdate 事件,請使用 currentProgress 屬性記錄更新的進度,並使用 SDK 提供的上傳函式傳送這些屬性。
事件
「PlayerGameEvent」的用戶端整合方式如下:
建構 Player Game Event
Java
// Build the PlayerGameEvent
PlayerGameEvent event = new PlayerGameEvent.Builder("matchCompleted")
.addProperty("matchId", "Match_A")
.addProperty("gameMode", "Battle_B")
.addProperty("mapId", "Location_XYZ")
.addProperty("isWinner", true)
.addProperty("playerElimination", 2)
.build();
List events = new ArrayList<>();
// ... populate list ...
建構 progressUpdate Player Game Event
Java
// Build the PlayerGameEvent
PlayerGameEvent event = new PlayerGameEvent.Builder("progressUpdate")
.addProperty("currentProgress", 52)
// Add other properties if needed
.build();
List events = new ArrayList<>();
// ... populate list ...
記錄事件並上傳
Java
// Buffers the event locally.
client.recordEvent(event);
// Buffers the events locally, (List version)
client.recordEvents(events);
// This submits the events to PGS
client.requestEventsUpload();