Integration Best Practices
Note the following best practices for integrating games with Leaderboards and Tournaments:
- Integrate the Leaderboards and Tournaments APIs into the back-end server code for your game instead of invoking the APIs directly from the game client. This provides the following benefits:
- superior agility of feature development and bug fixes
- more protection against compromised game-api-keys by APKs being reverse engineered
-
Make sure that you invoke the Register Player method only once per device-installation. If you call this API multiple times, each call creates a new player profile. All past player history is lost.
-
To retain player history across devices or installations, implement Register Player with vendorPlayerId.
-
Each device should ideally invoke the Authenticate Player only when the session has expired. You do not need to invoke this method every time a game is opened. Instead, use the sessionExpirationDate returned in Authenticate Player response to proactively call Authenticate Player again to renew the session.
- If you are running a few active tournaments at the same time, consider using the list method (such as Get Tournaments) rather than the details method (such as Get Tournament Details). All (or most) of the fields available in the details response are also available in the list response.