Leaderboards

public interfaceLeaderboards

This interface is deprecated.
UseLeaderboardsClient instead

Entry point for leaderboard functionality.

Nested Class Summary

interface Leaderboards.LeaderboardMetadataResult This interface is deprecated. LeaderboardBufferis returned directly in theLeaderboardsClient.
interface Leaderboards.LoadPlayerScoreResult This interface is deprecated. LeaderboardScoreis returned directly in theLeaderboardsClient.
interface Leaderboards.LoadScoresResult This interface is deprecated. LeaderboardsClient.LeaderboardScoresis returned directly in the LeaderboardsClient.
interface Leaderboards.SubmitScoreResult This interface is deprecated. ScoreSubmissionDatais returned directly in theLeaderboardsClient.

Public Method Summary

abstractIntent
getAllLeaderboardsIntent(GoogleApiClient apiClient)
Gets an intent to show the list of leaderboards for a game.
abstractIntent
getLeaderboardIntent(GoogleApiClient apiClient,String leaderboardId)
Gets an intent to show a leaderboard for a game.
abstractIntent
getLeaderboardIntent(GoogleApiClient apiClient,String leaderboardId, int timeSpan)
Gets an intent to show a leaderboard for a game.
abstractIntent
getLeaderboardIntent(GoogleApiClient apiClient,String leaderboardId, int timeSpan, int collection)
Gets an intent to show a leaderboard for a game.
abstractPendingResult<Leaderboards.LoadPlayerScoreResult>
loadCurrentPlayerLeaderboardScore(GoogleApiClient apiClient,String leaderboardId, int span, int leaderboardCollection)
Asynchronously load the currently signed in player's score for a given leaderboard.
abstractPendingResult<Leaderboards.LeaderboardMetadataResult>
loadLeaderboardMetadata(GoogleApiClient apiClient,String leaderboardId, boolean forceReload)
Asynchronously load a specific leaderboard's metadata for this game.
abstractPendingResult<Leaderboards.LeaderboardMetadataResult>
loadLeaderboardMetadata(GoogleApiClient apiClient, boolean forceReload)
Asynchronously load the list of leaderboard metadata for this game.
abstractPendingResult<Leaderboards.LoadScoresResult>
loadMoreScores(GoogleApiClient apiClient, LeaderboardScoreBufferbuffer, int maxResults, int pageDirection)
Asynchronously loads an additional page of score data for the given score buffer.
abstractPendingResult<Leaderboards.LoadScoresResult>
loadPlayerCenteredScores(GoogleApiClient apiClient,String leaderboardId, int span, int leaderboardCollection, int maxResults)
Asynchronously load the player-centered page of scores for a given leaderboard.
abstractPendingResult<Leaderboards.LoadScoresResult>
loadPlayerCenteredScores(GoogleApiClient apiClient,String leaderboardId, int span, int leaderboardCollection, int maxResults, boolean forceReload)
Asynchronously load the player-centered page of scores for a given leaderboard.
abstractPendingResult<Leaderboards.LoadScoresResult>
loadTopScores(GoogleApiClient apiClient,String leaderboardId, int span, int leaderboardCollection, int maxResults, boolean forceReload)
Asynchronously load the top page of scores for a given leaderboard.
abstractPendingResult<Leaderboards.LoadScoresResult>
loadTopScores(GoogleApiClient apiClient,String leaderboardId, int span, int leaderboardCollection, int maxResults)
Asynchronously load the top page of scores for a given leaderboard.
abstract void
submitScore(GoogleApiClient apiClient,String leaderboardId, long score)
Submit a score to a leaderboard for the currently signed in player.
abstract void
submitScore(GoogleApiClient apiClient,String leaderboardId, long score,StringscoreTag)
Submit a score to a leaderboard for the currently signed in player.
abstractPendingResult<Leaderboards.SubmitScoreResult>
submitScoreImmediate(GoogleApiClient apiClient,String leaderboardId, long score,StringscoreTag)
Submit a score to a leaderboard for the currently signed in player.
abstractPendingResult<Leaderboards.SubmitScoreResult>
submitScoreImmediate(GoogleApiClient apiClient,String leaderboardId, long score)
Submit a score to a leaderboard for the currently signed in player.

Public Methods

public abstractIntent getAllLeaderboardsIntent(GoogleApiClient apiClient)

Gets an intent to show the list of leaderboards for a game. Note that this must be invoked with Activity.startActivityForResult(Intent, int),so that the identity of the calling package can be established.

A GamesActivityResultCodes.RESULT_RECONNECT_REQUIREDmay be returned as the resultCode in Activity.onActivityResult(int, int, Intent)if the GoogleApiClient ends up in an inconsistent state.

Required API:Games.API
Required Scopes:Games.SCOPE_GAMES

Parameters
apiClient TheGoogleApiClient to service the call.
Returns
  • AnIntent that can be started to view the list of leaderboards for a game.

public abstractIntent getLeaderboardIntent(GoogleApiClient apiClient,String leaderboardId)

Gets an intent to show a leaderboard for a game. Note that this must be invoked with Activity.startActivityForResult(Intent, int),so that the identity of the calling package can be established.

A GamesActivityResultCodes.RESULT_RECONNECT_REQUIREDmay be returned as the resultCode in Activity.onActivityResult(int, int, Intent)if the GoogleApiClient ends up in an inconsistent state.

Required API:Games.API
Required Scopes:Games.SCOPE_GAMES

Parameters
apiClient TheGoogleApiClient to service the call.
leaderboardId The ID of the leaderboard to view.
Returns
  • AnIntent that can be started to view the specified leaderboard.

public abstractIntent getLeaderboardIntent(GoogleApiClient apiClient,String leaderboardId, int timeSpan)

Gets an intent to show a leaderboard for a game. Note that this must be invoked with Activity.startActivityForResult(Intent, int),so that the identity of the calling package can be established.

A GamesActivityResultCodes.RESULT_RECONNECT_REQUIREDmay be returned as the resultCode in Activity.onActivityResult(int, int, Intent)if the GoogleApiClient ends up in an inconsistent state.

Required API:Games.API
Required Scopes:Games.SCOPE_GAMES

Parameters
apiClient TheGoogleApiClient to service the call.
leaderboardId The ID of the leaderboard to view.
timeSpan Time span to retrieve data for. Valid values are LeaderboardVariant.TIME_SPAN_DAILY, LeaderboardVariant.TIME_SPAN_WEEKLY,or LeaderboardVariant.TIME_SPAN_ALL_TIME.
Returns
  • AnIntent that can be started to view the specified leaderboard.

public abstractIntent getLeaderboardIntent(GoogleApiClient apiClient,String leaderboardId, int timeSpan, int collection)

Gets an intent to show a leaderboard for a game. Note that this must be invoked with Activity.startActivityForResult(Intent, int),so that the identity of the calling package can be established.

A GamesActivityResultCodes.RESULT_RECONNECT_REQUIREDmay be returned as the resultCode in Activity.onActivityResult(int, int, Intent)if the GoogleApiClient ends up in an inconsistent state.

Required API:Games.API
Required Scopes:Games.SCOPE_GAMES

Parameters
apiClient TheGoogleApiClient to service the call.
leaderboardId The ID of the leaderboard to view.
timeSpan Time span to retrieve data for. Valid values are LeaderboardVariant.TIME_SPAN_DAILY, LeaderboardVariant.TIME_SPAN_WEEKLY,or LeaderboardVariant.TIME_SPAN_ALL_TIME.
collection The collection to show by default. Valid values are LeaderboardVariant.COLLECTION_PUBLICand LeaderboardVariant.COLLECTION_FRIENDS.
Returns
  • AnIntent that can be started to view the specified leaderboard.

public abstractPendingResult<Leaderboards.LoadPlayerScoreResult> loadCurrentPlayerLeaderboardScore(GoogleApiClient apiClient,String leaderboardId, int span, int leaderboardCollection)

Asynchronously load the currently signed in player's score for a given leaderboard.

Required API:Games.API
Required Scopes:Games.SCOPE_GAMES

Parameters
apiClient TheGoogleApiClient to service the call.
leaderboardId ID of the leaderboard to load the score from.
span Time span to retrieve data for. Valid values are LeaderboardVariant.TIME_SPAN_DAILY, LeaderboardVariant.TIME_SPAN_WEEKLY,or LeaderboardVariant.TIME_SPAN_ALL_TIME.
leaderboardCollection The leaderboard collection to retrieve scores for. Valid values are either LeaderboardVariant.COLLECTION_PUBLICor LeaderboardVariant.COLLECTION_FRIENDS.
Returns

public abstractPendingResult<Leaderboards.LeaderboardMetadataResult> loadLeaderboardMetadata(GoogleApiClient apiClient,String leaderboardId, boolean forceReload)

Asynchronously load a specific leaderboard's metadata for this game.

Required API:Games.API
Required Scopes:Games.SCOPE_GAMES

Parameters
apiClient TheGoogleApiClient to service the call.
leaderboardId ID of the leaderboard to load metadata for.
forceReload Iftrue,this call will clear any locally cached data and attempt to fetch the latest data from the server. This would commonly be used for something like a user-initiated refresh. Normally, this should be set tofalse to gain advantages of data caching.
Returns

public abstractPendingResult<Leaderboards.LeaderboardMetadataResult> loadLeaderboardMetadata(GoogleApiClient apiClient, boolean forceReload)

Asynchronously load the list of leaderboard metadata for this game.

Required API:Games.API
Required Scopes:Games.SCOPE_GAMES

Parameters
apiClient TheGoogleApiClient to service the call.
forceReload Iftrue,this call will clear any locally cached data and attempt to fetch the latest data from the server. This would commonly be used for something like a user-initiated refresh. Normally, this should be set tofalse to gain advantages of data caching.
Returns

public abstractPendingResult<Leaderboards.LoadScoresResult> loadMoreScores(GoogleApiClient apiClient, LeaderboardScoreBufferbuffer, int maxResults, int pageDirection)

Asynchronously loads an additional page of score data for the given score buffer. A new score buffer will be delivered that replaces the given buffer.

Required API:Games.API
Required Scopes:Games.SCOPE_GAMES

Parameters
apiClient TheGoogleApiClient to service the call.
buffer The existing buffer that will be expanded. The buffer is allowed to be closed prior to being passed in to this method.
maxResults The maximum number of scores to fetch per page. Must be between 1 and 25. Note that the number of scores returned here may be greater than this value, depending on how much data is cached on the device.
pageDirection The direction to expand the buffer. Values are defined inPageDirection.
Returns

public abstractPendingResult<Leaderboards.LoadScoresResult> loadPlayerCenteredScores(GoogleApiClient apiClient,String leaderboardId, int span, int leaderboardCollection, int maxResults)

Asynchronously load the player-centered page of scores for a given leaderboard. If the player does not have a score on this leaderboard, this call will return the top page instead.

Required API:Games.API
Required Scopes:Games.SCOPE_GAMES

Parameters
apiClient TheGoogleApiClient to service the call.
leaderboardId ID of the leaderboard.
span Time span to retrieve data for. Valid values are LeaderboardVariant.TIME_SPAN_DAILY, LeaderboardVariant.TIME_SPAN_WEEKLY,or LeaderboardVariant.TIME_SPAN_ALL_TIME.
leaderboardCollection The leaderboard collection to retrieve scores for. Valid values are either LeaderboardVariant.COLLECTION_PUBLICor LeaderboardVariant.COLLECTION_FRIENDS.
maxResults The maximum number of scores to fetch per page. Must be between 1 and 25.
Returns

public abstractPendingResult<Leaderboards.LoadScoresResult> loadPlayerCenteredScores(GoogleApiClient apiClient,String leaderboardId, int span, int leaderboardCollection, int maxResults, boolean forceReload)

Asynchronously load the player-centered page of scores for a given leaderboard. If the player does not have a score on this leaderboard, this call will return the top page instead.

Required API:Games.API
Required Scopes:Games.SCOPE_GAMES

Parameters
apiClient TheGoogleApiClient to service the call.
leaderboardId ID of the leaderboard.
span Time span to retrieve data for. Valid values are LeaderboardVariant.TIME_SPAN_DAILY, LeaderboardVariant.TIME_SPAN_WEEKLY,or LeaderboardVariant.TIME_SPAN_ALL_TIME.
leaderboardCollection The leaderboard collection to retrieve scores for. Valid values are either LeaderboardVariant.COLLECTION_PUBLICor LeaderboardVariant.COLLECTION_FRIENDS.
maxResults The maximum number of scores to fetch per page. Must be between 1 and 25.
forceReload Iftrue,this call will clear any locally cached data and attempt to fetch the latest data from the server. This would commonly be used for something like a user-initiated refresh. Normally, this should be set tofalse to gain advantages of data caching.
Returns

public abstractPendingResult<Leaderboards.LoadScoresResult> loadTopScores(GoogleApiClient apiClient,String leaderboardId, int span, int leaderboardCollection, int maxResults, boolean forceReload)

Asynchronously load the top page of scores for a given leaderboard.

Required API:Games.API
Required Scopes:Games.SCOPE_GAMES

Parameters
apiClient TheGoogleApiClient to service the call.
leaderboardId ID of the leaderboard.
span Time span to retrieve data for. Valid values are LeaderboardVariant.TIME_SPAN_DAILY, LeaderboardVariant.TIME_SPAN_WEEKLY,or LeaderboardVariant.TIME_SPAN_ALL_TIME.
leaderboardCollection The leaderboard collection to retrieve scores for. Valid values are either LeaderboardVariant.COLLECTION_PUBLICor LeaderboardVariant.COLLECTION_FRIENDS.
maxResults The maximum number of scores to fetch per page. Must be between 1 and 25.
forceReload Iftrue,this call will clear any locally cached data and attempt to fetch the latest data from the server. This would commonly be used for something like a user-initiated refresh. Normally, this should be set tofalse to gain advantages of data caching.
Returns

public abstractPendingResult<Leaderboards.LoadScoresResult> loadTopScores(GoogleApiClient apiClient,String leaderboardId, int span, int leaderboardCollection, int maxResults)

Asynchronously load the top page of scores for a given leaderboard.

Required API:Games.API
Required Scopes:Games.SCOPE_GAMES

Parameters
apiClient TheGoogleApiClient to service the call.
leaderboardId ID of the leaderboard.
span Time span to retrieve data for. Valid values are LeaderboardVariant.TIME_SPAN_DAILY, LeaderboardVariant.TIME_SPAN_WEEKLY,or LeaderboardVariant.TIME_SPAN_ALL_TIME.
leaderboardCollection The leaderboard collection to retrieve scores for. Valid values are either LeaderboardVariant.COLLECTION_PUBLICor LeaderboardVariant.COLLECTION_FRIENDS.
maxResults The maximum number of scores to fetch per page. Must be between 1 and 25.
Returns

public abstract voidsubmitScore(GoogleApiClient apiClient,String leaderboardId, long score)

Submit a score to a leaderboard for the currently signed in player. The score is ignored if it is worse (as defined by the leaderboard configuration) than a previously submitted score for the same player.

This form of the API is a fire-and-forget form. Use this if you do not need to be notified of the results of submitting the score, though note that the update may not be sent to the server until the next sync.

The meaning of the score value depends on the formatting of the leaderboard established in the developer console. Leaderboards support the following score formats:

  • Fixed-point:scorerepresents a raw value, and will be formatted based on the number of decimal places configured. A score of 1000 would be formatted as 1000, 100.0, or 10.00 for 0, 1, or 2 decimal places.
  • Time:scorerepresents an elapsed time in milliseconds. The value will be formatted as an appropriate time value.
  • Currency:scorerepresents a value in micro units. For example, in USD, a score of 100 would display as $0.0001, while a score of 1000000 would display as $1.00

For more details, please seeLeaderboard Concepts.

Required API:Games.API
Required Scopes:Games.SCOPE_GAMES

Parameters
apiClient TheGoogleApiClient to service the call.
leaderboardId The leaderboard to submit the score to.
score The raw score value.

public abstract voidsubmitScore(GoogleApiClient apiClient,String leaderboardId, long score,StringscoreTag)

Submit a score to a leaderboard for the currently signed in player. The score is ignored if it is worse (as defined by the leaderboard configuration) than a previously submitted score for the same player.

This form of the API is a fire-and-forget form. Use this if you do not need to be notified of the results of submitting the score, though note that the update may not be sent to the server until the next sync.

The meaning of the score value depends on the formatting of the leaderboard established in the developer console. Leaderboards support the following score formats:

  • Fixed-point:scorerepresents a raw value, and will be formatted based on the number of decimal places configured. A score of 1000 would be formatted as 1000, 100.0, or 10.00 for 0, 1, or 2 decimal places.
  • Time:scorerepresents an elapsed time in milliseconds. The value will be formatted as an appropriate time value.
  • Currency:scorerepresents a value in micro units. For example, in USD, a score of 100 would display as $0.0001, while a score of 1000000 would display as $1.00

For more details, please seeLeaderboard Concepts.

Required API:Games.API
Required Scopes:Games.SCOPE_GAMES

Parameters
apiClient TheGoogleApiClient to service the call.
leaderboardId The leaderboard to submit the score to.
score The raw score value.
scoreTag Optional metadata about this score. The value may contain no more than 64 URI-safe characters as defined by section 2.3 of RFC 3986.

public abstractPendingResult<Leaderboards.SubmitScoreResult> submitScoreImmediate(GoogleApiClient apiClient,String leaderboardId, long score,StringscoreTag)

Submit a score to a leaderboard for the currently signed in player. The score is ignored if it is worse (as defined by the leaderboard configuration) than a previously submitted score for the same player.

This form of the API will attempt to submit the score to the server immediately, and will return a GamesPendingResult with information about the submission.

The meaning of the score value depends on the formatting of the leaderboard established in the developer console. Leaderboards support the following score formats:

  • Fixed-point:scorerepresents a raw value, and will be formatted based on the number of decimal places configured. A score of 1000 would be formatted as 1000, 100.0, or 10.00 for 0, 1, or 2 decimal places.
  • Time:scorerepresents an elapsed time in milliseconds. The value will be formatted as an appropriate time value.
  • Currency:scorerepresents a value in micro units. For example, in USD, a score of 100 would display as $0.0001, while a score of 1000000 would display as $1.00

For more details, please seethis page.

Required API:Games.API
Required Scopes:Games.SCOPE_GAMES

Parameters
apiClient TheGoogleApiClient to service the call.
leaderboardId The leaderboard to submit the score to.
score The raw score value.
scoreTag Optional metadata about this score. The value may contain no more than 64 URI-safe characters as defined by section 2.3 of RFC 3986.
Returns

public abstractPendingResult<Leaderboards.SubmitScoreResult> submitScoreImmediate(GoogleApiClient apiClient,String leaderboardId, long score)

Submit a score to a leaderboard for the currently signed in player. The score is ignored if it is worse (as defined by the leaderboard configuration) than a previously submitted score for the same player.

This form of the API will attempt to submit the score to the server immediately, and will return a GamesPendingResult with information about the submission.

The meaning of the score value depends on the formatting of the leaderboard established in the developer console. Leaderboards support the following score formats:

  • Fixed-point:scorerepresents a raw value, and will be formatted based on the number of decimal places configured. A score of 1000 would be formatted as 1000, 100.0, or 10.00 for 0, 1, or 2 decimal places.
  • Time:scorerepresents an elapsed time in milliseconds. The value will be formatted as an appropriate time value.
  • Currency:scorerepresents a value in micro units. For example, in USD, a score of 100 would display as $0.0001, while a score of 1000000 would display as $1.00

For more details, please seethis page.

Required API:Games.API
Required Scopes:Games.SCOPE_GAMES

Parameters
apiClient TheGoogleApiClient to service the call.
leaderboardId The leaderboard to submit the score to.
score The raw score value.
Returns