Authentication via device ID

Device ID authentication lets users start using the application on a mobile device without entering registration data. The first time a user logs in to the application using the device ID, a new account is created automatically, and the user doesn’t need to enter a username, email address, or other data. The SDK supports authentication via ID of mobile devices on Android and iOS.

Learn about advanced setups from our how-tos.

How to implement user authentication via device ID

Device ID authentication lets users start using the application on a mobile device without entering registration data. The first time a user logs in to the application using the device ID, a new account is created automatically, and the user doesn’t need to enter a username, email address, or other data.

Notice
The account created by the device ID allows using the application only on the current mobile device. Access to it is lost after changing an Android or iOS device or after uninstalling an application on an iOS device. To save progress in the application and use the account on other devices, the user can upgrade the account by linking a social network or by entering a username, email address, and password.

With the device ID, you can implement user authentication on one or more mobile devices in the background mode. To use this function, the user should link the device ID to an existing account.

The SDK supports authentication via ID of mobile devices on Android and iOS.

Get device ID

The device ID is generated by the platform and is available to applications installed on the mobile device. The SDK gets the ID value using the platform API and uses this value to perform various functions using the Xsolla API.

The iOS device ID is passed in the UIDevice.identifierForVendor property. The standard Unity method SystemInfo.deviceUniqueIdentifier is used to determine the ID.

The Android device ID is passed in the android.provider.Settings.Secure.ANDROID_ID constant. The SDK uses its own logic to determine the ID because the standard Unity method returns the Android device ID as an MD5 hash, which is inappropriate for Xsolla API calls.

SDK methods

The SDK implements methods for the following functions:

Authentication

SDK method nameDescription
AuthViaDeviceID
Authenticates the user to the application using the current device ID.

Account upgrade

SDK method nameDescription
AddUsernameEmailAuthToAccount
Adds a username, email address, and password, that can be used for authentication, to the current account.
Links a social network, that can be used for authentication, to the current account.
Notice
The listed methods can be used to upgrade an account created in any available way (e.g. by using a social network or an email address and password).

Device management

SDK method nameDescription
GetUserDevices
Returns a list of devices linked to the current user account.
Links the specified device to the current user account.
Unlinks the specified device from the current user account.
Was this article helpful?
Thank you!
Is there anything we can improve? Message
We’re sorry to hear that
Please explain why this article wasn’t helpful to you. Message
Thank you for your feedback!
We’ll review your message and use it to help us improve your experience.
Hide
Last updated: August 1, 2022

Found a typo or other text error? Select the text and press Ctrl+Enter.

Report a problem
We always review our content. Your feedback helps us improve it.
Provide an email so we can follow up
Thank you for your feedback!