Summary: Constants | Inherited Constants | Methods | Inherited Methods | [Expand All]
public interface

# Achievement

implements Freezable<Achievement> Parcelable

com.google.android.gms.games.achievement.Achievement

Known Indirect Subclasses AchievementEntity
AchievementEntity | Data object representing a set of Achievement data.

## Class Overview

Data interface for retrieving achievement information.

## Summary

Constants
int | STATE_HIDDEN | Constant returned by `getState()` indicating a hidden achievement.
int | STATE_REVEALED | Constant returned by `getState()` indicating a revealed achievement.
int | STATE_UNLOCKED | Constant returned by `getState()` indicating an unlocked achievement.
int | TYPE_INCREMENTAL | Constant returned by `getType()` indicating an incremental achievement.
int | TYPE_STANDARD | Constant returned by `getType()` indicating a standard achievement.

[Expand] Inherited Constants
From interface android.os.Parcelable
int | CONTENTS_FILE_DESCRIPTOR |
int | PARCELABLE_WRITE_RETURN_VALUE |

Public Methods
abstract String | getAchievementId() Retrieves the ID of this achievement.
abstract int | getCurrentSteps() Retrieves the number of steps this user has gone toward unlocking this achievement; only applicable for `TYPE_INCREMENTAL` achievement types.
abstract String | getDescription() Retrieves the description for this achievement.
abstract void | getDescription(CharArrayBuffer dataOut) Loads the achievement description into the given `CharArrayBuffer`.
abstract void | getFormattedCurrentSteps(CharArrayBuffer dataOut) Retrieves the number of steps this user has gone toward unlocking this achievement (formatted for the user's locale) into the given `CharArrayBuffer`.
abstract String | getFormattedCurrentSteps() Retrieves the number of steps this user has gone toward unlocking this achievement (formatted for the user's locale); only applicable for `TYPE_INCREMENTAL` achievement types.
abstract void | getFormattedTotalSteps(CharArrayBuffer dataOut) Loads the total number of steps necessary to unlock this achievement (formatted for the user's locale) into the given `CharArrayBuffer`; only applicable for `TYPE_INCREMENTAL` achievement types.
abstract String | getFormattedTotalSteps() Retrieves the total number of steps necessary to unlock this achievement, formatted for the user's locale; only applicable for `TYPE_INCREMENTAL` achievement types.
abstract long | getLastUpdatedTimestamp() Retrieves the timestamp (in millseconds since epoch) at which this achievement was last updated.
abstract void | getName(CharArrayBuffer dataOut) Loads the achievement name into the given `CharArrayBuffer`.
abstract String | getName() Retrieves the name of this achievement.
abstract Player | getPlayer() Retrieves the player information associated with this achievement.
abstract Uri | getRevealedImageUri() Retrieves a URI that can be used to load the achievement's revealed image icon.
abstract int | getState() Retrieves the state of the achievement - one of `STATE_UNLOCKED`, `STATE_REVEALED`, or `STATE_HIDDEN`.
abstract int | getTotalSteps() Retrieves the total number of steps necessary to unlock this achievement; only applicable for `TYPE_INCREMENTAL` achievement types.
abstract int | getType() Retrieves the type of this achievement - one of `TYPE_STANDARD` or `TYPE_INCREMENTAL`.
abstract Uri | getUnlockedImageUri() Retrieves a URI that can be used to load the achievement's unlocked image icon.
abstract long | getXpValue() Retrieves the XP value of this achievement.

[Expand] Inherited Methods
From interface com.google.android.gms.common.data.Freezable
abstract Achievement | freeze() Freeze a volatile representation into an immutable representation.
abstract boolean | isDataValid() Check to see if this object is valid for use.
From interface android.os.Parcelable
abstract int | describeContents()
abstract void | writeToParcel(Parcel arg0, int arg1)

## Constants

#### public static final int STATE_HIDDEN

Constant returned by `getState()` indicating a hidden achievement.

Constant Value: 2 (0x00000002)

#### public static final int STATE_REVEALED

Constant returned by `getState()` indicating a revealed achievement.

Constant Value: 1 (0x00000001)

#### public static final int STATE_UNLOCKED

Constant returned by `getState()` indicating an unlocked achievement.

Constant Value: 0 (0x00000000)

#### public static final int TYPE_INCREMENTAL

Constant returned by `getType()` indicating an incremental achievement.

Constant Value: 1 (0x00000001)

#### public static final int TYPE_STANDARD

Constant returned by `getType()` indicating a standard achievement.

Constant Value: 0 (0x00000000)

## Public Methods

#### public abstract String getAchievementId ()

Retrieves the ID of this achievement.

##### Returns

- The achievement ID.

#### public abstract int getCurrentSteps ()

Retrieves the number of steps this user has gone toward unlocking this achievement; only applicable for `TYPE_INCREMENTAL` achievement types.

##### Returns

- The number of steps this user has gone toward unlocking this achievement.

#### public abstract String getDescription ()

Retrieves the description for this achievement.

##### Returns

- The achievement description.

#### public abstract void getDescription (CharArrayBuffer dataOut)

Loads the achievement description into the given `CharArrayBuffer`.

##### Parameters

dataOut | The buffer to load the data into.

#### public abstract void getFormattedCurrentSteps (CharArrayBuffer dataOut)

Retrieves the number of steps this user has gone toward unlocking this achievement (formatted for the user's locale) into the given `CharArrayBuffer`.

##### Parameters

dataOut | The buffer to load the data into.

#### public abstract String getFormattedCurrentSteps ()

Retrieves the number of steps this user has gone toward unlocking this achievement (formatted for the user's locale); only applicable for `TYPE_INCREMENTAL` achievement types.

##### Returns

- The formatted number of steps this user has gone toward unlocking this achievement,

#### public abstract void getFormattedTotalSteps (CharArrayBuffer dataOut)

Loads the total number of steps necessary to unlock this achievement (formatted for the user's locale) into the given `CharArrayBuffer`; only applicable for `TYPE_INCREMENTAL` achievement types.

##### Parameters

dataOut | The buffer to load the data into.

#### public abstract String getFormattedTotalSteps ()

Retrieves the total number of steps necessary to unlock this achievement, formatted for the user's locale; only applicable for `TYPE_INCREMENTAL` achievement types.

##### Returns

- The total number of steps necessary to unlock this achievement.

#### public abstract long getLastUpdatedTimestamp ()

Retrieves the timestamp (in millseconds since epoch) at which this achievement was last updated. If the achievement has never been updated, this will return -1.

##### Returns

- Timestamp at which this achievement was last updated.

#### public abstract void getName (CharArrayBuffer dataOut)

Loads the achievement name into the given `CharArrayBuffer`.

##### Parameters

dataOut | The buffer to load the data into.

#### public abstract String getName ()

Retrieves the name of this achievement.

##### Returns

- The achievement name.

#### public abstract Player getPlayer ()

Retrieves the player information associated with this achievement.

Note that this object is a volatile representation, so it is not safe to cache the output of this directly. Instead, cache the result of `freeze()`.

##### Returns

- The player associated with this achievement.

#### public abstract Uri getRevealedImageUri ()

Retrieves a URI that can be used to load the achievement's revealed image icon. Returns null if the achievement has no revealed image.

To retrieve the Image from the `Uri`, use `ImageManager`.

##### Returns

- The image URI for the achievement's revealed image icon, or null if the achievement has no revealed image.

#### public abstract int getState ()

Retrieves the state of the achievement - one of `STATE_UNLOCKED`, `STATE_REVEALED`, or `STATE_HIDDEN`.

##### Returns

- The state of this achievement.

#### public abstract int getTotalSteps ()

Retrieves the total number of steps necessary to unlock this achievement; only applicable for `TYPE_INCREMENTAL` achievement types.

##### Returns

- The total number of steps necessary to unlock this achievement.

#### public abstract int getType ()

Retrieves the type of this achievement - one of `TYPE_STANDARD` or `TYPE_INCREMENTAL`.

##### Returns

- The type of this achievement.

#### public abstract Uri getUnlockedImageUri ()

Retrieves a URI that can be used to load the achievement's unlocked image icon. Returns null if the achievement has no unlocked image.

To retrieve the Image from the `Uri`, use `ImageManager`.

##### Returns

- The image URI for the achievement's unlocked image icon, or null if the achievement has no unlocked image.

#### public abstract long getXpValue ()

Retrieves the XP value of this achievement.

##### Returns

- XP value given to players for unlocking this achievement.