Implementing Login/Logout
- It's important to set the User Attribute Unique ID when a user logs into your app.
- This merges the new user with the existing user, if any exists, and will help prevent the creation of unnecessary/stale users.
- Setting the Unique ID is a critical piece to tie a user across devices and installs/uninstalls as well across all platforms (i.e. iOS, Android, Windows, The Web). Set the USER_ATTRIBUTE_UNIQUE_ID attribute as soon as the user is logged in. Unique ID can be something like an email ID, a username (unique), or a database ID or any Backend generated ID.
- Do not set this for the user who not logged in.
Login
MoEAnalyticsHelper.setUniqueId(context, UNIQUE_ID)
MoEAnalyticsHelper.INSTANCE.setUniqueId(context, UNIQUE_ID);
Note: The following values are not allowed in the UniqueID field: "unknown", "guest", "null", "0", "1", "true", "false", "user_attribute_unique_id", "(empty)", "na", "n/a", "", "dummy_seller_code", "user_id", "id", "customer_id", "uid", "userid", "none", "-2", "-1", "2"
| warning |
UNIQUE ID chaos
|
Logout
The application needs to notify the MoEngage SDK whenever the user is logged out of the application. To notify the SDK, call the API whenever the user is logged out of the application.
MoECoreHelper.logoutUser(context)
MoECoreHelper.INSTANCE.logoutUser(context);
If the application is registering for a push token, it should pass the new push token to MoEngage SDK after the user logs out. For more information about passing push tokens, refer to Push Configuration for Android SDK.
Updating User Attribute Unique Id
Use the method setAlias() to update the user attribute unique id instead of setUniqueId() with a different value. Using the method setUniqueId() with a new value creates unintended users in MoEngage.
MoEAnalyticsHelper.setAlias(ALIAS)
MoEAnalyticsHelper.INSTANCE.setAlias(ALIAS);