Overview
Encore requires user identification to track entitlements and prevent abuse across devices. You can also set user attributes to enable targeted offers and personalization.Anonymous Users
Encore automatically generates a random user ID that persists until the user deletes/reinstalls your app or callsreset().
This anonymous ID is stored securely on the native side and allows entitlement tracking to work immediately without requiring explicit user identification.
Identified Users
If you use your own user management system, callidentify when you have a user’s identity:
- Associate promotional access with your user account
- Sync entitlements across devices when the user logs in
- Track conversion attribution accurately
Setting User Attributes
Strongly recommended. Country and language already shape which offers a user is shown. Once you know who the user is, send what your app already knows, such as country and anything of your own in
custom. Gender is accepted only from an app rated 18+ in its store listing, so leave it out otherwise.setLanguage with the user’s choice.
User attributes enable personalized offers, audience targeting, and conversion context tracking.
Set attributes using the EncoreUserAttributes class. Every value is a string except age, a whole number of years; dateOfBirth is a YYYY-MM-DD string. Use the custom map, which takes strings, for app-specific fields. See EncoreUserAttributes for every field and its format:
Resetting User Identity
When a user logs out, callreset():
- Reset the user ID to a new auto-generated anonymous ID
- Clear cached entitlement data (iOS)
- Clear all user attributes
EncorePurchaseController survives reset(). It is app-level infrastructure, not user state, so logging a user out does not require re-registering it (and it cannot be re-registered outside configure).
Full Example
Apps Without Login
If your app doesn’t require users to log in, you don’t need to callidentify. The SDK uses an auto-generated anonymous ID. You can still set attributes:
Next Steps
- Present Offers: present a reward sheet at a moment your user just earned, and read the result
- Add Subscription Product: Reduce Churn only. Create a subscription product and connect it to Encore