Following the deprecation of the Google Sign-In API, we are removing the games v1 SDK in 2026. After February 2025, you will be unable to publish titles that are newly integrated with games v1 SDK, on Google Play. We recommend that you use the games v2 SDK instead.
While existing titles with the previous games v1 integrations continue to function for a couple of years, you are encouraged to migrate to v2 starting June 2025.
PlayerLevelInfo
Stay organized with collections
Save and categorize content based on your preferences.
Data object representing the current level information of a player in the metagame.
A PlayerLevelInfo
has four components: the player's current XP, the timestamp
of the player's last level-up, the player's current level, and the player's next level.
Inherited Constant Summary
From interface android.os.Parcelable
int |
CONTENTS_FILE_DESCRIPTOR |
|
int |
PARCELABLE_STABILITY_LOCAL |
|
int |
PARCELABLE_STABILITY_VINTF |
|
int |
PARCELABLE_WRITE_RETURN_VALUE |
|
Inherited Method Summary
From class java.lang.Object
Object
|
clone()
|
boolean |
|
void |
finalize()
|
final Class<?>
|
getClass()
|
int |
hashCode()
|
final void |
notify()
|
final void |
notifyAll()
|
String
|
toString()
|
final void |
wait(long arg0, int arg1)
|
final void |
wait(long arg0)
|
final void |
wait()
|
From interface android.os.Parcelable
abstract int |
describeContents()
|
abstract void |
writeToParcel( Parcel arg0,
int arg1)
|
Public Methods
public boolean equals (Object obj)
public PlayerLevel
getCurrentLevel ()
Getter for the player's current level object. This object will be the same as the
one returned from
getNextLevel()
if the player reached the maximum level.
See
isMaxLevel()
Returns
- The player's current level object.
public long getCurrentXpTotal ()
Returns
- The player's current XP value.
public long getLastLevelUpTimestamp ()
Returns
- The timestamp of the player's last level-up.
public PlayerLevel
getNextLevel ()
Getter for the player's next level object. This object will be the same as the one
returned from
getCurrentLevel()
if the player reached the maximum level.
See
isMaxLevel()
Returns
- The player's next level object.
public boolean isMaxLevel ()
public void writeToParcel (Parcel out, int
flags)
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2025-01-24 UTC.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-01-24 UTC."],[[["\u003cp\u003e\u003ccode\u003ePlayerLevelInfo\u003c/code\u003e is a data object that holds a player's current level information in a game's metagame.\u003c/p\u003e\n"],["\u003cp\u003eIt includes the player's current XP, last level-up timestamp, current level, and next level.\u003c/p\u003e\n"],["\u003cp\u003eIf a player reaches the maximum level, \u003ccode\u003egetCurrentLevel()\u003c/code\u003e and \u003ccode\u003egetNextLevel()\u003c/code\u003e will return the same object.\u003c/p\u003e\n"],["\u003cp\u003eYou can check if a player is at the maximum level using \u003ccode\u003eisMaxLevel()\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003ePlayerLevelInfo\u003c/code\u003e implements \u003ccode\u003eParcelable\u003c/code\u003e, enabling it to be passed between components or processes.\u003c/p\u003e\n"]]],["`PlayerLevelInfo` is a data object representing a player's level in a game. It stores the player's current XP, the last level-up timestamp, the current level, and the next level. Key actions include retrieving the current and next level objects, getting the current XP value, getting the last level-up timestamp, and determining if the player has reached the maximum level. The `CREATOR` field enables creating `PlayerLevelInfo` objects and the object implements methods for equality checks, hash code generation, and parcel writing.\n"],null,["# PlayerLevelInfo\n\npublic final class **PlayerLevelInfo** extends [Object](//developer.android.com/reference/java/lang/Object.html) \nimplements [Parcelable](//developer.android.com/reference/android/os/Parcelable.html) \nData object representing the current level information of a player in the metagame.\n\nA `PlayerLevelInfo` has four components: the player's current XP, the timestamp\nof the player's last level-up, the player's current level, and the player's next level. \n\n### Inherited Constant Summary\n\nFrom interface android.os.Parcelable \n\n|-----|-------------------------------|---|\n| int | CONTENTS_FILE_DESCRIPTOR | |\n| int | PARCELABLE_STABILITY_LOCAL | |\n| int | PARCELABLE_STABILITY_VINTF | |\n| int | PARCELABLE_WRITE_RETURN_VALUE | |\n\n### Field Summary\n\n|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------|---|\n| public static final [Creator](//developer.android.com/reference/android/os/Parcelable.Creator.html)\\\u003c[PlayerLevelInfo](/android/games_v1/reference/com/google/android/gms/games/PlayerLevelInfo)\\\u003e | [CREATOR](/android/games_v1/reference/com/google/android/gms/games/PlayerLevelInfo#CREATOR) | |\n\n### Public Method Summary\n\n|-------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| boolean | [equals](/android/games_v1/reference/com/google/android/gms/games/PlayerLevelInfo#equals(java.lang.Object))([Object](//developer.android.com/reference/java/lang/Object.html) obj) |\n| [PlayerLevel](/android/games_v1/reference/com/google/android/gms/games/PlayerLevel) | [getCurrentLevel](/android/games_v1/reference/com/google/android/gms/games/PlayerLevelInfo#getCurrentLevel())() Getter for the player's current level object. |\n| long | [getCurrentXpTotal](/android/games_v1/reference/com/google/android/gms/games/PlayerLevelInfo#getCurrentXpTotal())() |\n| long | [getLastLevelUpTimestamp](/android/games_v1/reference/com/google/android/gms/games/PlayerLevelInfo#getLastLevelUpTimestamp())() |\n| [PlayerLevel](/android/games_v1/reference/com/google/android/gms/games/PlayerLevel) | [getNextLevel](/android/games_v1/reference/com/google/android/gms/games/PlayerLevelInfo#getNextLevel())() Getter for the player's next level object. |\n| int | [hashCode](/android/games_v1/reference/com/google/android/gms/games/PlayerLevelInfo#hashCode())() |\n| boolean | [isMaxLevel](/android/games_v1/reference/com/google/android/gms/games/PlayerLevelInfo#isMaxLevel())() |\n| void | [writeToParcel](/android/games_v1/reference/com/google/android/gms/games/PlayerLevelInfo#writeToParcel(android.os.Parcel,%20int))([Parcel](//developer.android.com/reference/android/os/Parcel.html) out, int flags) |\n\n### Inherited Method Summary\n\nFrom class java.lang.Object \n\n|----------------------------------------------------------------------------|--------------------------------------------------------------------------------|\n| [Object](//developer.android.com/reference/java/lang/Object.html) | clone() |\n| boolean | equals([Object](//developer.android.com/reference/java/lang/Object.html) arg0) |\n| void | finalize() |\n| final [Class](//developer.android.com/reference/java/lang/Class.html)\\\u003c?\\\u003e | getClass() |\n| int | hashCode() |\n| final void | notify() |\n| final void | notifyAll() |\n| [String](//developer.android.com/reference/java/lang/String.html) | toString() |\n| final void | wait(long arg0, int arg1) |\n| final void | wait(long arg0) |\n| final void | wait() |\n\nFrom interface android.os.Parcelable \n\n|---------------|--------------------------------------------------------------------------------------------------|\n| abstract int | describeContents() |\n| abstract void | writeToParcel([Parcel](//developer.android.com/reference/android/os/Parcel.html) arg0, int arg1) |\n\nFields\n------\n\n#### public static final [Creator](//developer.android.com/reference/android/os/Parcelable.Creator.html)\\\u003c[PlayerLevelInfo](/android/games_v1/reference/com/google/android/gms/games/PlayerLevelInfo)\\\u003e\n**CREATOR**\n\nPublic Methods\n--------------\n\n#### public boolean **equals** ([Object](//developer.android.com/reference/java/lang/Object.html) obj)\n\n#### public [PlayerLevel](/android/games_v1/reference/com/google/android/gms/games/PlayerLevel)\n**getCurrentLevel** ()\n\nGetter for the player's current level object. This object will be the same as the\none returned from [getNextLevel()](/android/games_v1/reference/com/google/android/gms/games/PlayerLevelInfo#getNextLevel()) if the player reached the maximum level.\n\nSee [isMaxLevel()](/android/games_v1/reference/com/google/android/gms/games/PlayerLevelInfo#isMaxLevel()) \n\n##### Returns\n\n- The player's current level object. \n\n#### public long **getCurrentXpTotal** ()\n\n##### Returns\n\n- The player's current XP value. \n\n#### public long **getLastLevelUpTimestamp** ()\n\n##### Returns\n\n- The timestamp of the player's last level-up. \n\n#### public [PlayerLevel](/android/games_v1/reference/com/google/android/gms/games/PlayerLevel)\n**getNextLevel** ()\n\nGetter for the player's next level object. This object will be the same as the one\nreturned from [getCurrentLevel()](/android/games_v1/reference/com/google/android/gms/games/PlayerLevelInfo#getCurrentLevel()) if the player reached the maximum level.\n\nSee [isMaxLevel()](/android/games_v1/reference/com/google/android/gms/games/PlayerLevelInfo#isMaxLevel()) \n\n##### Returns\n\n- The player's next level object. \n\n#### public int **hashCode** ()\n\n#### public boolean **isMaxLevel** ()\n\n##### Returns\n\n- `true` if the player reached the maximum level ([getCurrentLevel()](/android/games_v1/reference/com/google/android/gms/games/PlayerLevelInfo#getCurrentLevel()) is the same as [getNextLevel()](/android/games_v1/reference/com/google/android/gms/games/PlayerLevelInfo#getNextLevel()). \n\n#### public void **writeToParcel** ([Parcel](//developer.android.com/reference/android/os/Parcel.html) out, int flags)"]]